aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Add networking tools (net-tools, iproute2, netcat) to devcontainer imageAdam Mathes14 days1-1/+4
|
* Configure devcontainer to use docker-compose.dev.yaml for consistent setupAdam Mathes14 days1-9/+6
|
* Add docker-compose.dev.yaml for consistent containerized development environmentAdam Mathes14 days2-9/+33
|
* Update ticket status after closing NK-hy162wAdam Mathes2026-02-151-1/+1
|
* Switch to HashRouter to fix page reload issues (NK-hy162w)Adam Mathes2026-02-157-31/+43
|
* Add devcontainer configuration and update documentation for containerized ↵Adam Mathes2026-02-152-6/+24
| | | | development
* Devcontainer: Install Node.js 20 directly in DockerfileAdam Mathes2026-02-151-1/+3
|
* Update ticket status after closing NK-p0nfoiAdam Mathes2026-02-151-1/+2
|
* Frontend: Build and check in production assets for multi-select featureAdam Mathes2026-02-154-9/+9
|
* Frontend: Implement multi-select feeds in sidebar (NK-p0nfoi)Adam Mathes2026-02-153-12/+59
|
* Backend: Support multi-feed filtering in stream APIAdam Mathes2026-02-154-26/+39
|
* Frontend: Build and check in production assets for additive filtering fixAdam Mathes2026-02-155-15/+15
|
* Update ticket status after closing NK-r8rs7m and NK-4jy0t2Adam Mathes2026-02-151-15/+16
|
* Workflow: Simplify verification step in crank_but_verifyAdam Mathes2026-02-151-1/+1
|
* Frontend: Implement Playwright UI tests with mocked API responses (NK-4jy0t2)Adam Mathes2026-02-152-1/+169
|
* Frontend: Fix additive filtering logic and preserve search query during ↵Adam Mathes2026-02-152-12/+146
| | | | navigation (NK-r8rs7m)
* Backend: Fix linting issues, improve error handling, and replace magic numbersAdam Mathes2026-02-1513-130/+105
|
* Document background crawler behavior and update default crawl minutes to 60 ↵Adam Mathes2026-02-152-8/+36
| | | | (or disable with 0)
* Update golangci-lint version in CI to v2.9.0Adam Mathes2026-02-151-1/+1
|
* Implement --purge and --purge-unread flags to delete old itemsAdam Mathes2026-02-153-8/+117
|
* Clean up redundant font CSS variables and consolidate :root blocksAdam Mathes2026-02-151-17/+15
|
* Document 'make check' benchmarksAdam Mathes2026-02-151-0/+21
|
* Add code coverage to 'make check' and add 'cover' and 'coverage-html' targetsAdam Mathes2026-02-151-2/+9
|
* Add local git hooks to run 'make check' before pushAdam Mathes2026-02-153-4/+33
|
* Fix mobile infinite scroll by using <li> and threshold 0 for sentinelAdam Mathes2026-02-151-3/+3
|
* Commit ticket updates and remaining backend lint fixesAdam Mathes2026-02-155-10/+27
|
* Make sidebar filters additive by preserving context in linksAdam Mathes2026-02-152-7/+20
|
* Create 'make check' unified workflow and fix various lint issuesAdam Mathes2026-02-159-57/+60
|
* Improve infinite scroll responsiveness on mobile/iPadAdam Mathes2026-02-151-2/+2
|
* Fix horizontal scrolling on iPad and improve mobile responsivenessAdam Mathes2026-02-156-5/+28
|
* chore: update build artifacts and finalize test improvementsAdam Mathes2026-02-1424-728/+2004
|
* feat: add manual crawl button and E2E test for crawl cycleAdam Mathes2026-02-143-1/+61
|
* feat: add username field to login for better password manager supportAdam Mathes2026-02-144-6/+34
|
* chore: align local Makefile with GitHub CI jobsAdam Mathes2026-02-144-12/+28
|
* chore: fix lint and type errors to resolve CI failuresAdam Mathes2026-02-1420-99/+192
|
* style: fix font theme application to body textAdam Mathes2026-02-143-1/+38
|
* test: mock RSS feeds in E2E testsAdam Mathes2026-02-147-4/+55
|
* ci: enhance workflow with E2E tests and Docker checkAdam Mathes2026-02-148-125/+96
|
* assets updateAdam Mathes2026-02-142-0/+12
|
* style: update Settings page to match glass sidebar aestheticAdam Mathes2026-02-1411-22053/+208
|
* Docs: Update README.md with recent changes and feature additions (NK-sdxq5p)Adam Mathes2026-02-141-1/+21
|
* UI: Improve consistency of settings, logout, and theme sections in sidebar ↵Adam Mathes2026-02-146-11/+379
| | | | (NK-v9e7r3)
* UI: Add collapsible caret icons for Tags and Feeds in sidebar (NK-gjymiw)Adam Mathes2026-02-147-31/+65
|
* Cleanup root directory by moving scripts to scripts/ and fix CSRF cookie ↵Adam Mathes2026-02-149-8/+243
| | | | policy for dev env
* new workflows based on past issuesAdam Mathes2026-02-145-1/+137
|
* task: improve mobile responsiveness of React UI\n\n- Added media queries to ↵Adam Mathes2026-02-146-13/+144
| | | | App.css to handle mobile sidebar layout (overlay with backdrop)\n- Implemented auto-hiding sidebar on mobile when links are clicked\n- Reduced padding and adjusted max-widths for smaller screens in App.css, FeedItem.css, and Settings.css\n- Added window resize listener to Dashboard to manage sidebar visibility based on width\n- Verified all existing tests pass\n\nFixes NK-g818qn
* task: delete vanilla js prototype\n\n- Removed vanilla/ directory and ↵Adam Mathes2026-02-142860-683184/+4
| | | | web/dist/vanilla directory\n- Updated Makefile, Dockerfile, and CI workflow to remove vanilla references\n- Cleaned up web/web.go to remove vanilla embed and routes\n- Verified build and tests pass\n\nCloses NK-2tcnmq
* test: add background crawler timing testsAdam Mathes2026-02-142-2/+130
| | | | | | | | | | | | | | | | Added tests to verify background crawler behavior: - Tests that backgroundCrawl returns immediately when minutes <= 0 - Tests that backgroundCrawl executes at the specified interval - Tests that Run() returns early when port is -1 (testing mode) These tests verify the general structure and timing of the background crawler without requiring a full integration test with actual feeds. Closes NK-pwogze Created follow-up tickets: - NK-rhelrq: End-to-end integration test for complete crawl cycle - NK-0oti10: Documentation for background crawler behavior
* fix: auto-load more items when pressing 'j' on last item\n\nPreviously, if ↵Adam Mathes2026-02-144-6/+52
| | | | you were focused on the last loaded item and that item was\nvery long (extending past the viewport), pressing 'j' would do nothing\nbecause there were no more items loaded yet.\n\nNow, when the user presses 'j' and lands on the last item, we automatically\ntrigger loading more items (if available), ensuring that the next 'j' press\nwill work as expected.\n\nAdded test to verify this behavior works correctly.
* feat: fix authentication to handle no-password scenario\n\n- Updated ↵Adam Mathes2026-02-143-0/+356
| | | | Authenticated() to return true when no password is configured\n- Updated apiLoginHandler to succeed when no password is set\n- Added comprehensive backend tests for both password/no-password cases\n- Added E2E tests for authentication flows (password tests are skipped by default)\n- All tests pass for both authentication scenarios\n\nFixes issue where app would require login even when no password was configured.\nNow properly supports passwordless mode for local development.