Using Next.js + Typescript Stack for the first time!
Expected Functionalities:
- Home (/)
- Summary:
- Bank dashboard
- Latest post
- Recent uploads
- PWA Install Prompt
- Summary:
- Bank (/bank)
- Balance
- Transfer
- Upload files (/upload)
- Posts/News (/news)
- Voting? repo
- Admin Dashboard
- User Table
- Create/Delete users
- Change/Reset passwords
- Verify staff account
- Bank
- Modify Balances (admin insert a new row with certain notes: e.g. "系統調整")
- List of transactions
- Upload
- Set files requirements
- See uploaded files & created time
- Send push notifications
- User Table
- PWA
- Configuration
- Service Worker (Serwist)
- Manifest.json
- Push notifications (FCM)
- Send from admin panel
- Connect to bank transfer
- Configuration
TODOs:
- Deploy to Vercel
- UI & Pages
- Shadcn/UI
- Tidy build process (ignore eslint on build)
- Set up database (Supabase Postgres)
- Set up Auth (Supabase Auth)
- Tidy things up
- Check supabase auth call (should all be server client)
- Tidy up file location (rule: in related path folder)
- Magic files: loading, not-found and /error
- Change supabase env to not be exposed
- Add 2nd layer of verification to db query calls (e.g.
user.email == from_email, etc..)
- Set up Storage (Supabase Storage)
- Postgres RLS on supabase
- Supabase CLI: Generate db types
- Github Action automation
- Dev Tools (Maybe)
- Sentry for error management
- PostHog analytics