| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
| |
Login form now includes a CSRF token from the cookie as a hidden form
field. The CSRF middleware accepts tokens from either the X-CSRF-Token
header (for JS clients) or the csrf_token form field (for HTML forms).
Removed /login from the CSRF exclusion list so login POSTs are now
validated.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
| |
|
|
|
|
|
|
|
|
| |
Sidebar open/close state is now saved to a cookie (neko_sidebar) so it
persists across page reloads. On first visit without a cookie, the
sidebar defaults to closed on tablet and mobile (<=1024px viewport)
and open on desktop. Removes the auto-open-on-resize behavior that
was overriding user preference.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
| |\
| |
| | |
Change mark-as-read threshold from 50% to 100% visibility
|
| |/
|
|
|
|
|
|
|
|
|
|
|
| |
Change IntersectionObserver threshold from 0.5 to 1.0 so items are only
marked as read when fully scrolled into view, reducing accidental
mark-as-read during fast scrolling.
Also fix unused Category import in perf test and add thicket config.json
to repository so future agents can use thicket CLI commands.
Closes NK-s2g59a
https://claude.ai/code/session_019Z4VJxzY7tcAuNkPAkvry9
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
| |
branding
- Fix V3 keyboard navigation delay (resolved NK-wjats7)
- Update V3 document title to 'neko' (resolved NK-4p3s91)
- Fix V3 neko logo/button position to be top-left fixed (resolved NK-89za3s)
- Improve FeedItems (React) stability with ref-based index tracking and robust tests
- Sync V3 styling and selection feedback with V2 patterns
- Rebuild production assets
|
| |
|
|
|
|
|
| |
- Remove duplicate neko logo from v3 sidebar
- Keep sidebar toggle button fixed at top-left even when sidebar is open
- Add top padding to v3 sidebar to prevent overlap with the fixed toggle button
- Update v3 tests to match UI changes
|
| |\
| |
| | |
Add performance benchmarks, stress tests, and frontend perf tests
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Go benchmarks cover item CRUD/filter/sanitization, API endpoints (stream,
item update, feed list), middleware stack (gzip, security headers, CSRF),
and crawler pipeline (feed parsing, mocked crawl). Stress tests verify
concurrent reads/writes and large dataset handling. Frontend perf tests
measure template generation, DOM insertion, and store event throughput.
New Makefile targets: bench, bench-short, stress, test-perf.
https://claude.ai/code/session_01ChDVWFDrQoFjMYHpaLGr9s
|
| |\|
| |
| | |
Add performance and stress test plan
|
| |/
|
|
|
|
|
|
|
| |
Comprehensive plan covering Go backend benchmarks (item/filter/API/middleware/crawler),
stress tests (concurrent reads/writes, large datasets), and frontend perf tests
(render throughput, store event cascades). Saved to both PLAN.md and DOCS/ for
reference by other agents.
https://claude.ai/code/session_01ChDVWFDrQoFjMYHpaLGr9s
|
| |
|
|
|
|
|
|
|
|
| |
stability
- Sync v3 dark/light theme colors with v2 defaults
- Fix v3 settings input/select contrast in dark mode
- Add logo emoji to v3 sidebar
- Fix duplicate key warnings and side-effect issues in FeedItems.tsx (v2)
- Rebuild production assets
|
| | |
|
| | |
|
| |
|
|
|
|
|
| |
- Update Makefile to correctly build and copy frontend-vanilla (v3) assets
- Fix frontend-vanilla/vite.config.ts to build to its own dist directory
- Normalize CSRF check path and exclude /api/logout to fix v3 session clearing
- Include latest built assets for v3
|
| |
|
|
|
|
|
|
|
| |
- Close NK-cuz8gh: v3 feed management
- Add 'Manage Feeds' section to settings view in v3 UI
- Implement deleteFeed and updateFeed helper functions
- Add event listeners for deleting feeds and updating tags
- Add tests for new functionality
- Created NK-cdwj52 for bulk edit feature
|
| |
|
|
|
|
| |
- Close NK-edahin: cut 'FILTERS' text
- Remove the h3 Filters header in frontend-vanilla/src/main.ts
- Verified that tests still pass
|
| |
|
|
|
|
|
|
| |
- Close NK-s8nytj: Settings page close behavior
- Update frontend-vanilla/src/main.ts to toggle settings/filter navigation
- Add tests in frontend-vanilla/src/main.test.ts for navigation logic
- Created NK-gxvegm for feed/tag settings behavior
- Created NK-f64ocp for routing logic refactor
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
| |
- Close NK-oqd24q: Fix login access for v3/api
- Update web.go to exclude /login/ from CSRF check during initial submission
- Modernize web/static/login.html with new CSS and structure
- Add web/login_test.go to verify CSRF exclusion
- Created NK-ngokc3 for further CSRF enhancements
|
| |
|
|
|
|
| |
- Close NK-k2fh32: scroll mark as read broken in V3 UI
- Add IntersectionObserver to item list in renderItems
- Add test case ensuring apiFetch is called when item intersects
|
| | |
|
| |
|
|
| |
overflow, cleaned up styles
|
| |
|
|
| |
implement feed deselect, and complete Settings (Add Feed, Export/Import OPML)
|
| | |
|
| | |
|
| |
|
|
| |
for Tags and Feeds
|
| |
|
|
| |
responsiveness with backdrop
|
| |
|
|
| |
for v2 parity
|
| |
|
|
| |
Settings view, and achieve 80% test coverage
|
| | |
|
| | |
|
| | |
|
| |
|
|
| |
embed dist/v3
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
| |
development
|
| | |
|
| | |
|
| | |
|
| | |
|