Commit Graph

60 Commits

Author SHA1 Message Date
b58956937e feat(invite): add invite code registration system 2026-07-06 01:13:07 +08:00
a7c5082ff6 chore: rename app to 星笺 (Mailova) 2026-07-06 00:41:24 +08:00
741b51ad6c feat(showcase): sort postcards by time descending 2026-07-06 00:27:39 +08:00
66ba163ef6 feat(showcase): lightbox, checkbox per-card toggle, lazyload, fix toggle Y-align, remove navbar on public page 2026-07-06 00:24:03 +08:00
2c0229b12f fix(settings): use Query alias for tab param, fix showcase tab persistence 2026-07-06 00:10:30 +08:00
e0ef607a05 fix(showcase): tab stay, Y-center toggle, group postcards by sent/received, hide navbar on public page, remove profiles/xx/showcase 2026-07-06 00:05:15 +08:00
c550289527 refactor(ui): merge showcase settings into settings page tab, fix profile showcase GET route, fix layout 2026-07-05 23:56:28 +08:00
148cfdf2a4 feat(showcase): add public showcase page with per-profile/per-postcard visibility controls 2026-07-05 23:45:23 +08:00
b412f5001e feat(models): add showcase fields to User, Profile, Postcard 2026-07-05 23:35:45 +08:00
46670c72fa fix(auth): set session expires_at to non-nullable with 1 year max 2026-07-05 23:21:54 +08:00
d7780ea6ad feat(ui): move detail page badge next to card number title 2026-07-05 23:16:11 +08:00
23c61363a6 fix(ui): shorten mark-delivered button text to 已送达 2026-07-05 23:15:38 +08:00
a502c14c99 fix(ui): improve detail page mobile layout - smaller title, compact back button, action buttons in one row 2026-07-05 23:15:10 +08:00
a4cd204237 fix(ui): remove duplicate back link from detail page, keep top-left back button 2026-07-05 23:12:59 +08:00
71a029057a feat(ui): add back button left of card number on detail page 2026-07-05 23:11:05 +08:00
41aa2058bc fix(ui): vertically center all badges 2026-07-05 23:09:47 +08:00
6ae80c5591 feat(ui): stack country and recipient/sender vertically in postcard list 2026-07-05 23:07:41 +08:00
80928d5ae6 feat(ui): show arrival date below send date for delivered postcards 2026-07-05 23:06:56 +08:00
90c02faa8f feat(ui): show send/receive date in postcard list 2026-07-05 23:06:18 +08:00
61190328a4 feat(dashboard): mobile 2-col stats, add relative time to recent activity 2026-07-05 23:03:35 +08:00
fc55507019 i18n: change all page titles and nav text to Chinese 2026-07-05 22:40:49 +08:00
23897560ad fix(ui): improve dashboard and global mobile responsiveness 2026-07-05 22:34:25 +08:00
a4714db073 feat(ui): redesign dashboard as global overview with stats, progress bar, recent activity 2026-07-05 22:32:16 +08:00
a57cba22d5 fix(ui): add missing id to profile nickname for rename toggle 2026-07-05 22:28:49 +08:00
a212021997 feat(ui): redesign profiles page with card layout showing postcard stats 2026-07-05 22:27:13 +08:00
5b6b2ccef8 fix: clear arrival_time and disable field when status is sent 2026-07-05 22:15:40 +08:00
84e4e457db feat(ui): redesign postcards list with tabs, row layout, country dropdown filter 2026-07-05 22:12:33 +08:00
2aeaa560d6 fix(ui): align settings cards with heading, full width in container 2026-07-05 22:07:36 +08:00
557d0a86d0 fix(ui): wider settings cards with more padding 2026-07-05 22:06:46 +08:00
f85207f1d5 fix(ui): center settings cards to fix uneven left-right spacing 2026-07-05 22:05:14 +08:00
005e6a09b5 fix(ui): username change no longer requires password confirmation 2026-07-05 22:03:59 +08:00
ae2ed2d961 feat: add user settings page (change username/password) and remove public registration 2026-07-05 22:01:24 +08:00
5607485c6a feat(ui): add mark-delivered button on sent postcards with auto today date 2026-07-05 21:45:32 +08:00
7a62ff0818 feat(ui): show country flag emoji next to country codes 2026-07-05 21:40:46 +08:00
9692ff8ade feat(auth): add remember me option with persistent DB sessions 2026-07-05 21:28:58 +08:00
2bd914532e feat: always display country code in uppercase (model validates + oninput) 2026-07-05 21:22:57 +08:00
08684493f4 fix(ui): explicitly set text color on .btn to prevent white text on mobile 2026-07-05 21:11:14 +08:00
4c348d6f04 fix(ui): stack upload form vertically on mobile to prevent button text cutoff 2026-07-05 21:09:11 +08:00
c42d371e08 fix(ui): upload button text cut off on mobile, use flex shrink for file input 2026-07-05 21:08:10 +08:00
282763e7d8 fix(ui): toggle required on hidden fields to prevent browser validation error 2026-07-05 20:21:57 +08:00
08035e3447 feat(ui): arrival time only required when status is delivered, not sent 2026-07-05 20:19:47 +08:00
5d7e70f820 fix(ui): toggle required attr on hidden fields when switching postcard status 2026-07-05 20:12:13 +08:00
f1a9bf7335 fix(ui): remove required from date inputs to unblock form submit 2026-07-05 20:11:04 +08:00
5cfbec892d fix(ui): remove overly strict pattern validation on postcard form 2026-07-05 19:35:55 +08:00
167ba3c724 fix(ui): increase spacing between welcome heading and cards 2026-07-05 19:23:53 +08:00
9decb570c2 feat(ui): rich dashboard cards with countries and recent postcards 2026-07-05 19:22:10 +08:00
419ec47b99 feat(ui): polished dashboard profile cards, remove manage button 2026-07-05 19:12:27 +08:00
3cb286d088 fix(ui): unify btn line-height for a and button elements 2026-07-05 19:10:32 +08:00
244ab5fbf8 fix(ui): unify btn height a vs button, use --reload for dev server 2026-07-05 19:09:01 +08:00
ee655be7d4 feat: inline rename for profiles, dashboard stats grid UI 2026-07-05 19:03:48 +08:00