Commit graph

24 commits

Author SHA1 Message Date
Vadym Samoilenko
015c5efbbd fix: try underscore variant when dash-slug path not found on disk 2026-03-26 15:23:03 +00:00
Vadym Samoilenko
dd902ebb61 fix: repo path resolution via slug+ROOT_PATH, add trailing slash to repo URL 2026-03-26 15:21:43 +00:00
Vadym Samoilenko
4e950a2a67 feat: auto-detect repo URL from git remote, fix project slug (full path not last segment) 2026-03-26 15:19:40 +00:00
Vadym Samoilenko
46db7476a3 fix: timeline chart linear scale, date filter on daily chart, null-safe chart init 2026-03-26 15:16:12 +00:00
Vadym Samoilenko
0ee3c3fbd9 fix: filter collector to only scan projects under CC_ROOT_PATH 2026-03-26 15:09:49 +00:00
Vadym Samoilenko
4d69a4ac64 feat: project metadata fields (client, job#, repo) with inline editing + time calc audit 2026-03-26 15:08:14 +00:00
Vadym Samoilenko
9ebe5a92fa fix: filter invalid timestamps in timeline chart to prevent Chart.js crash 2026-03-26 14:50:28 +00:00
Vadym Samoilenko
94ae1af2c2 fix: eager load ApiKey.user with selectinload to avoid lazy load in async context 2026-03-26 14:46:14 +00:00
Vadym Samoilenko
080eec32d1 fix: use execute(delete()) instead of session.delete() to avoid MissingGreenlet 2026-03-26 14:44:19 +00:00
Vadym Samoilenko
7f8048dcee fix: accept HTTP 422 as valid connection (key works, empty body rejected); remove curl preview 2026-03-26 14:43:03 +00:00
Vadym Samoilenko
6b2f811ee5 fix: use heredoc temp file for Python settings update — avoid quote conflicts in bash 2026-03-26 14:37:56 +00:00
Vadym Samoilenko
d7198fdc59 fix: don't rebuild DOM while modal is open — reload table only on close 2026-03-26 14:34:40 +00:00
Vadym Samoilenko
99f1ff6bec fix: escape bash ${VAR} in JS template literal — use array join instead 2026-03-26 14:31:30 +00:00
Vadym Samoilenko
0c7a7b8082 feat: logout button, revoke/delete keys, setup script download
- Sidebar: Add Sign Out button below user info
- Keys API: split revoke (PATCH /{id}/revoke) and delete (DELETE /{id})
- Keys page: Revoke + Delete buttons per key; delete removes from DB
- New key flow: after creation show download setup script step
  - Script embeds API key, asks for projects root folder
  - Downloads cc-collector.py, merges Claude Code hook into settings.json
  - Tests connection and reports result

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-26 14:05:14 +00:00
Vadym Samoilenko
354aec0995 style: brighter text colors — white primary, lighter muted 2026-03-26 13:59:55 +00:00
Vadym Samoilenko
b7b49110da fix: login page width 100% to center within flex #app container 2026-03-26 13:59:14 +00:00
Vadym Samoilenko
805566f1e5 redesign: premium dark UI — Montserrat, black + #FFC407
- Full CSS redesign: OLED black (#0a0a0a), #FFC407 accent, Montserrat 400–900
- Bold high-contrast typography (900 weight values, -0.04em tracking)
- No glassmorphism — flat sharp surfaces with subtle borders
- KPI cards: 2px yellow top accent bar on hover + lift shadow
- Login: centered card with yellow top bar + subtle grid bg pattern
- Modals: yellow top accent line
- Active nav: solid yellow bg, black text
- Buttons: yellow CTA with glow, ghost with yellow hover
- Badges: pill with yellow tint
- Favicon: dark card with yellow CC

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-26 13:51:18 +00:00
Vadym Samoilenko
b90e335f2b feat: apply glassmorphism design system from Oliver dashboard
- Full CSS rewrite: deep dark bg (#060714), glass cards with backdrop-filter,
  Fira Sans/Code fonts, indigo/violet accent palette replacing yellow
- Add animated orb background to index.html
- Update favicon to indigo gradient
- Wrap admin/settings forms in <form> tags with autocomplete attributes

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-26 13:43:36 +00:00
Vadym Samoilenko
436a089e63 fix: wrap login in form tag, remove QUIC for SSE endpoint
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-26 13:22:48 +00:00
Vadym Samoilenko
b2777958b3 remove tmp debug logging 2026-03-26 13:19:17 +00:00
Vadym Samoilenko
9d292f80da tmp: debug login to diagnose 401 2026-03-26 13:18:17 +00:00
Vadym Samoilenko
db4a431910 fix: set CC_BASE before api.js loads to fix login 404
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-26 13:14:00 +00:00
Vadym Samoilenko
ca40d251d6 fix: replace passlib with bcrypt directly (passlib incompatible with bcrypt>=4)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-26 13:10:24 +00:00
Vadym Samoilenko
7b30880d44 Initial commit — CC Dashboard v1.0
Multi-tenant Claude Code monitoring dashboard.
FastAPI + PostgreSQL + Docker + SSE real-time updates.
Montserrat font, black/#FFC407 color scheme.
Apache reverse proxy config at /cc-dashboard/.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-26 12:54:47 +00:00