<feed xmlns='http://www.w3.org/2005/Atom'>
<title>doot.git/web/templates/partials/notes-tab.html, branch main</title>
<subtitle>doot — personal productivity web app
</subtitle>
<id>https://git.terst.org/doot.git/atom?h=main</id>
<link rel='self' href='https://git.terst.org/doot.git/atom?h=main'/>
<link rel='alternate' type='text/html' href='https://git.terst.org/doot.git/'/>
<updated>2026-01-20T21:17:19+00:00</updated>
<entry>
<title>Remove Obsidian integration for public server deployment</title>
<updated>2026-01-20T21:17:19+00:00</updated>
<author>
<name>Peter Stone</name>
<email>thepeterstone@gmail.com</email>
</author>
<published>2026-01-20T21:17:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.terst.org/doot.git/commit/?id=07ba815e8517ee2d3a5fa531361bbd09bdfcbaa7'/>
<id>urn:sha1:07ba815e8517ee2d3a5fa531361bbd09bdfcbaa7</id>
<content type='text'>
Obsidian relied on local filesystem access which is incompatible with
public server deployment. This removes all Obsidian-related code including:

- API client and interface
- Store layer methods (SaveNotes, GetNotes, SearchNotes)
- Handler methods and routes
- UI tab and templates
- Configuration fields
- Related tests

Co-Authored-By: Claude Opus 4.5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>Implement Phase 2 Steps 3-5: Sorting and Search improvements</title>
<updated>2026-01-13T23:36:09+00:00</updated>
<author>
<name>Peter Stone</name>
<email>thepeterstone@gmail.com</email>
</author>
<published>2026-01-13T23:36:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.terst.org/doot.git/commit/?id=a1fa857a2f5ab163ffe5abbdeeb0eba8fc9508e9'/>
<id>urn:sha1:a1fa857a2f5ab163ffe5abbdeeb0eba8fc9508e9</id>
<content type='text'>
Step 3 - Trello Smart Sorting:
- Update GetBoards SQL with LEFT JOIN and MAX(c.id) for activity sorting
- Update GetBoardsWithCards to find max card ID per board
- Sort by: 1) Has cards, 2) Newest card activity, 3) Board name
- Trello IDs are chronologically sortable (newer &gt; older)

Step 4 - Todoist Due-First Sorting:
- Update GetTasks ORDER BY with CASE WHEN due_date IS NULL
- Sort by: 1) Incomplete, 2) Has due date, 3) Earliest date, 4) Priority
- Tasks with due dates appear before tasks without due dates

Step 5 - Obsidian Search:
- Add SearchNotes method with LIKE queries on title/content
- Update HandleNotes to check 'q' query param and HX-Target header
- Implement smart partial rendering (obsidian-notes vs notes-tab)
- Add search input with 300ms debounce and HTMX integration
- Real-time search without page reload

Mark Steps 1-5 as complete in PHASE_2_SURGICAL_PLAN.md
All tests passing

Co-Authored-By: Claude Sonnet 4.5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>Modernize frontend with tabs, HTMX, and Tailwind build pipeline</title>
<updated>2026-01-13T00:28:50+00:00</updated>
<author>
<name>Peter Stone</name>
<email>thepeterstone@gmail.com</email>
</author>
<published>2026-01-13T00:28:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.terst.org/doot.git/commit/?id=06c7485a7d05de86f9898e388161e8d932d5f3e6'/>
<id>urn:sha1:06c7485a7d05de86f9898e388161e8d932d5f3e6</id>
<content type='text'>
Complete UI overhaul implementing modern design patterns with HTMX for
dynamic updates, proper Tailwind build pipeline, and improved UX.

Build Pipeline:
- Add npm + PostCSS + Tailwind CSS configuration
- Custom design system with brand colors
- Compiled CSS: 27KB (vs 3MB CDN), 99% reduction
- Makefile for unified build commands
- Inter font for improved typography

Tab Interface:
- Separate Tasks tab from Notes tab using HTMX
- Partial page updates without full refreshes
- Tab state management with proper refresh handling
- New endpoints: /tabs/tasks, /tabs/notes, /tabs/refresh

Template Architecture:
- Modular partials system (7 reusable components)
- Cleaner separation of concerns

Empty Board Management:
- Active boards in main 3-column grid
- Empty boards in collapsible section
- Reduces visual clutter

Visual Design Enhancements:
- Inter font, brand color accents
- Improved typography hierarchy and spacing
- Enhanced card styling with hover effects

Co-Authored-By: Claude Sonnet 4.5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
</feed>
