Skip to content

Commit defc278

Browse files
AmmarSaleh50claude
andcommitted
Release 0.3.0: themes + i18n + schedule CRUD + file manager
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent 130f02d commit defc278

2 files changed

Lines changed: 62 additions & 1 deletion

File tree

CHANGELOG.md

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,67 @@ All notable changes to study-dashboard will be documented here.
44
Format loosely follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
55
versions follow [SemVer](https://semver.org/spec/v2.0.0.html).
66

7+
## [v0.3.0] — 2026-04-21
8+
9+
Big visual + localization release. Five dashboard themes, full English/German
10+
i18n, per-course schedule CRUD, a proper file manager in the Files tab, and a
11+
pile of phone-UX fixes. All backwards compatible — just run the one new
12+
migration on upgrade.
13+
14+
### Added
15+
- **Five dashboard themes.** Pick from **Classic** (the default — serif,
16+
airy), **Terminal** (mono, teal-on-black, hacker cockpit), **Zine**
17+
(pastel cream + hand-drawn stickers), **Library** (sepia, card-catalog
18+
aesthetic), or **Swiss** (12-col grid, red accent). Each one is a full
19+
reskin — its own sidebar, CSS, and dashboard route, not just a palette.
20+
Picker lives in **Settings → Theme**.
21+
- **Full in-app i18n — English and German.** Every route, form, toast,
22+
empty state, error message, and theme-specific prose now runs through
23+
`i18next`. Language is picked explicitly in **Profile → Language** and
24+
persists in localStorage, decoupled from the date-format locale.
25+
- **Per-course schedule CRUD.** Add / edit / delete weekly slots from the
26+
course-detail **Schedule** tab without leaving the page.
27+
- **File manager.** Rename files and folders, recursive folder delete,
28+
create new folders, and a folder picker on the course form so each
29+
course scopes its Files tab to a specific prefix in the bucket. New
30+
backend endpoints `/files/move`, `/files/folder`, and a recursive
31+
listing helper.
32+
- **Claude Design prompt template** under `docs/claude-design-prompt.md`
33+
plus four worked-example outputs under `docs/examples/` — the starting
34+
points for the Terminal / Zine / Library / Swiss themes.
35+
36+
### Changed
37+
- **Phone UX pass.** 16 px form inputs (no more iOS zoom-on-focus), dvh
38+
for keyboard-aware layout, date-picker chrome contained inside its
39+
Field on iOS Safari, classic-theme weekly grid now renders the same
40+
multi-column time grid on phone (with horizontal scroll) instead of a
41+
stacked list — matches what the themed dashboards do.
42+
- **Course edit affordance** moved from a hover overlay on the course
43+
card to an explicit **Edit course** button inside the course-detail
44+
header. Notes and exam editing split out into their own cards with
45+
their own edit buttons. "Scheduled" field on exams relabeled to
46+
"Exam date".
47+
- **Dashboard top strip** on phone shows weekday / date / semester /
48+
week at a glance.
49+
- **Settings pickers** (timezone, date format) auto-save on change; the
50+
semester-label text field gets an inline Save button while dirty.
51+
Success toasts are now neutral instead of green.
52+
- **README hero** replaced with a 2×2 still collage of the four paper
53+
themes plus a looping GIF of Terminal. Mirrored in the German section.
54+
55+
### Upgrade from v0.2.0
56+
57+
```bash
58+
git pull origin main
59+
npx supabase db push # applies 20260421000001_theme.sql
60+
cd web && pnpm install && pnpm build
61+
```
62+
63+
The migration adds `app_settings.theme` with default `'editorial'`, so
64+
existing rows land on the Classic theme until you pick something else.
65+
66+
[v0.3.0]: https://github.com/AmmarSaleh50/study-dashboard/releases/tag/v0.3.0
67+
768
## [v0.2.0] — 2026-04-20
869

970
Rename pass: the project is now English-canonical from the database up through

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[project]
22
name = "study-dashboard-api"
3-
version = "0.1.0"
3+
version = "0.3.0"
44
description = "FastAPI backend for the study-dashboard app"
55
readme = "README.md"
66
requires-python = ">=3.12"

0 commit comments

Comments
 (0)