Budget application for tracking income and expenses. It supports various currencies, multiple wallets, several statistics, charts, graphs and more.
Includes:
Social (Google, Facebook) and custom JWT authentication with use of refresh tokens (stored as http-only cookie) and access tokens (stored only in-memory as variable).
Custom made reusable components like Modals, Dropdowns, Select, Carousel, Portal, Toast, Inputs, Buttons and more - mostly without use of any third-party libraries.
Server-state management with React-query, fetching data via custom fetch wrapper with retry functionality to refresh access tokens, React-Context for client-side state management, Immer to help with immutability.
Features like images upload, data filtering, charts, pagination, light/dark theme and more.
Localization (with i18next), SSG and SSR, styled components for styling, react-hook-form for forms.
Next.js API routes for REST API and MongoDB as database.
If you would like to try the app without creating an account, you can try demo, altough you won't be able to add or edit any data.