MVP Planning:
- Simple membership management
- Shop frontend with event details
- Navigate user back to page he visited before if it is a shop event uri
- Stripe payment integration & ticket buy process
- Add cron scheduler that permanently revokes expired sessions
- Return to old checkout session button
- Frontend success and cancel pages
- Option for customer to view his ticket orders & QR Code generation
- Remove invalidated field from tickets. invalidated_at is enough
- Create backend users & user overview that are not customers
- Add option to frontend to invalidate tickets and see their status
- Expense management (With categories, Images of bills, etc.)
- Annual finance reports
- Expense dashboard
- Move all frontend API types into typings folder
- Generalize images to files and make special endpoint for uploading files for events
- Eliminate all warnings
- Extend user information (firstName, lastName, function, etc.)
- Add useful dashboard (financial data, latest events and how many tickets left, member count and total yearly income through memberships)
- Add frontend translations
- Make translation language configurable in user settings
- Handle cascade in database
- GitHub issues marked with MVP
- Backend code documentation
- Add good README file
- Low amount of total users and active users at the same time
- Maximum of 30 active users at the same time
- No need for distributed system at these minor workloads
- Pagination is not needed. And if needed, it will be implemented in an later release.