This website requires JavaScript.
Explore
Help
Sign In
earthjasonlin
/
mailova
Watch
1
Star
0
Fork
0
Code
Issues
Pull Requests
Actions
Packages
Projects
Releases
Wiki
Activity
144
Commits
1
Branch
0
Tags
ae1a23143e4184c11095c55dc111ef56aa0ec7c6
Commit Graph
15 Commits
Include renames
feat(ui): optimize landing page and showcase for mobile (hamburger nav, 2-col grid, compact lightbox)
earthjasonlin
2026-07-18 09:41:42 +08:00
ae1a23143e
fix(templates): fix unhashable dict in Jinja2 cache by converting available_languages global to function
earthjasonlin
2026-07-18 08:57:42 +08:00
b80a1859a0
feat(storage): add S3 image storage support with file-based config and migration script
earthjasonlin
2026-07-18 08:03:18 +08:00
3a931fe752
fix(ui): fix field name corruption (country_to_from -> country_from) and ensure all flag displays show country code
earthjasonlin
2026-07-07 13:54:00 +08:00
599a95ee12
fix(ui): hide scroll loading indicator when no more content to load
earthjasonlin
2026-07-07 13:45:25 +08:00
fed060ea84
refactor(model): rename Postcard.country -> country_to for clear semantics - country_from: origin country (where postcard was sent from) - country_to: destination country (where postcard was sent to) - Profile.country remains as user's home country - Updated all routes, schemas, templates, and API endpoints
earthjasonlin
2026-07-07 13:43:39 +08:00
ad6f2b2ff2
fix(ui): show country code alongside flag emoji in from→to display
earthjasonlin
2026-07-07 13:34:06 +08:00
806c9ba8a0
feat(showcase): display send_time/receive_time on personal showcase cards
earthjasonlin
2026-07-07 13:24:58 +08:00
5de27f1937
feat(postcard): profile country, country_from, per-user card number uniqueness, public page overhaul - Profile: add country field for default origin country - Postcard: add country_from field, auto-fill from profile.country on create - card_number uniqueness: change from global to per-user (profile_id + card_number) - Public pages: remove card_number display, only show cards with image_front - Public pages: show country as from→to format - Index page: no time display, add register button, fix lightbox with prev/next - Infinite scroll: add /api/public/cards endpoints and IntersectionObserver - Internal pages: update postcards list/detail for country_from display - i18n: add profiles.country_ph, pc_form.country_from, pc_detail.route
earthjasonlin
2026-07-07 12:32:24 +08:00
a071b3dde4
feat(showcase): add temporary language switcher for visitors with cookie persistence
earthjasonlin
2026-07-07 09:57:20 +08:00
a619b919be
feat(i18n): add English localization with per-user language preference
earthjasonlin
2026-07-06 22:41:09 +08:00
87785494d6
feat(i18n): add English localization with per-user language preference and navbar toggle
earthjasonlin
2026-07-06 22:07:05 +08:00
f448a900f5
feat(showcase): lightbox, checkbox per-card toggle, lazyload, fix toggle Y-align, remove navbar on public page
earthjasonlin
2026-07-06 00:24:03 +08:00
66ba163ef6
fix(showcase): tab stay, Y-center toggle, group postcards by sent/received, hide navbar on public page, remove profiles/xx/showcase
earthjasonlin
2026-07-06 00:05:15 +08:00
e0ef607a05
feat(showcase): add public showcase page with per-profile/per-postcard visibility controls
earthjasonlin
2026-07-05 23:45:23 +08:00
148cfdf2a4