summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorLines
3 daysFix build + update skill description formatyyamashita-6/+19
- Add default export to parametric API routes to fix React Router prod build - Skill: SNS bio is now quoted verbatim with source and fetch date Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
3 daysFix build: add default export to parametric API resource routesyyamashita-0/+4
React Router requires a default export for parametric routes (:uuid) to correctly split server/client code during the production vite build. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
3 daysFix nav classes, add detail APIs, add update-band-info skillyyamashita-6/+287
- Fix nav: apply .nav class and .nav-brand to logo (styles were not rendering) - Add GET+PATCH /api/bands/:uuid and /api/artists/:uuid endpoints - PATCH supports append_links / append_members for non-destructive updates - Add /update-band-info skill: fetch SNS profiles and update band description/members Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
3 daysAdd bands/artists index pages and redirect top pageyyamashita-28/+76
- / now redirects to /bands - /bands shows band list with "+ Band" link - /artists shows artist list with "+ Artist" link - Nav simplified to Bands / Artists only Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
3 daysFix register-band skill: add required since/until/note fields to membersyyamashita-2/+2
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
3 daysFix API routes to return JSON as resource routesyyamashita-6/+0
Removing default component export makes these resource routes, so React Router returns the Response directly instead of wrapping in HTML SSR. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
3 daysAdd Claude Code skills for golive band registrationyyamashita-0/+221
- register-band: Web検索でSNS/メンバー情報を収集し、本番API経由でバンドを登録する - import-golive-events: golive APIからイベント出演者を一括取得し register-band で登録する Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
7 daysAdd lists feature (band recommendation lists with history)yyamashita-0/+729
New lists, list_entries, list_revisions tables; full CRUD routes under /lists; nav link in root. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
7 daysAdd band index page sorted by slug, show hiatus status onlyyyamashita-21/+9
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
7 daysSeparate current/former members with calculable period datesyyamashita-88/+202
- Add MemberGroup/BandGroup types and groupBandMembers/groupArtistMembers helpers - Calculate membership duration in months from YYYY-MM since/until values - Band view splits members into 在籍中 / 元メンバー sections with duration label - Artist view splits bands into 在籍中 / 元在籍 sections with duration label - Change since/until inputs to type="month" for structured data entry Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
8 daysAdd members table with membership period and note supportyyamashita-471/+597
Replace band_artists + member_periods with a single members table (id, band_id, artist_id, role, since, until, note, order_index). Each row represents one membership period, so rejoining artists get multiple rows. Existing band_artists data is auto-migrated on startup. Export format bumped to version 3. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
8 daysAdd /api/export and /api/import endpoints for DB backup and syncyyamashita-0/+167
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
9 dayssimplize cssyyamashita-447/+460
9 daysAdd JSON API endpoints and CLI script for band/artist managementyyamashita-1/+335
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
9 daysAdd Claude Code guidance to CLAUDE.mdyyamashita-6/+47
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
9 daysSupport multiple roles per member with free-text fallbackyyamashita-125/+183
- Role field stores comma-separated values ("Guitar, Vocal") - Form: tag-based multi-role editor per member; predefined select + "その他..." option reveals a free-text input for custom roles - Band detail: render each role as an inline tag (split on ", ") - band-edit: initializes roles from existing comma-separated data Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
9 daysAdd predefined link types and artist rolesyyamashita-17/+71
- app/lib/constants.ts: LINK_TYPES (12種) and ARTIST_ROLES (13種) - Band link forms: label input → type select (公式サイト, X, Instagram, ...) - Band member forms: role text → role select (Vocal, Guitar, Bass, ...) - Band detail: resolve link type key to display label via LINK_TYPE_LABEL Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
9 daysAdd band description/status fields and redesign index pageyyamashita-28/+112
- bands table: add description (TEXT) and status (TEXT DEFAULT 'active') via ALTER TABLE migrations (active / hiatus / disbanded) - Home page: minimal monochrome index listing name, area, status - Band detail: show description below title, status alongside area - Band new/edit forms: textarea for description, select for status Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
9 daysFix Docker startup: add package.json to app stage, respect DB_PATHyyamashita-1/+2
npm start requires package.json in the working directory. Also wire up the DB_PATH env var so the DB is created inside the mounted volume. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
9 daysImplement band/artist management with version historyyyamashita-30/+1679
Full CRUD for bands and artists: UUID + slug URLs, dynamic link editor, band-artist associations with roles, per-edit revision snapshots (message + IP). Add README and CLAUDE.md. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
9 daysAdd Dockerfile and server-setup.sh for git push auto-deployyyamashita-0/+5115
9 daysAdd docker-compose: join shared web network via whois-app containeryyamashita-0/+21
9 daysInitial scaffold: React Router v7 + SQLite + Tailwind CSS v4yyamashita-0/+229