This is a finance tracker app built with React, Remix, and TailwindCSS. It allows users to track their income and expenses and see a summary of their transactions.
- Expense Tracking: Keep track of your expenses per month to manage your finances better
- Savings Management: Monitor your savings and see how much you have saved per month
- Responsive Design: The app is responsive and works seamlessly across different devices.
-
Clone the repository
-
Install dependencies
npm install
-
Setup environment variables by creating a
.env
file in the root of the project and adding variables based on the schema defined inapp/env.server.ts
-
Run the migrations script
npm run db:migrate
-
Start the development server
npm run dev
-
Create a new user by following these steps:
- Create a new entry in the
invitations
table - Navigate to
/register?invite={invitation_code}
and use the generated primary key id as the invitation code to create a new user - In the
user-details
table, update therole
column toadmin
for to be able to generate new invitation directly from the app
- Create a new entry in the
- React: UI library
- TypeScript: Programming language
- Remix: React framework
- TailwindCSS: CSS framework
- PostgreSQL: Database management system
- Drizzle: Typescript-based ORM
- Zod: Schema declaration and validation library
- React Aria Components: Headless component library
- Other libraries: Various other libraries and tools for specific functionalities (listed in package.json).