Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/markusthielker/next-finances
📈 A finances application to keep track of my personal spendings
https://github.com/markusthielker/next-finances
Last synced: about 1 month ago
JSON representation
📈 A finances application to keep track of my personal spendings
- Host: GitHub
- URL: https://github.com/markusthielker/next-finances
- Owner: MarkusThielker
- Created: 2024-03-08T19:24:39.000Z (10 months ago)
- Default Branch: development
- Last Pushed: 2024-03-30T07:46:29.000Z (10 months ago)
- Last Synced: 2024-12-01T07:05:01.999Z (about 1 month ago)
- Language: TypeScript
- Homepage:
- Size: 430 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 12
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Next-Finances
This is my simple finances tracker that I use to keep track of my spending.
## Using the app
### Understanding the Basics
- **Entities**: The core building blocks of your finances.
- Accounts: Where you hold money (e.g., bank accounts, PayPal account, cash)
- Entities: Where you spend money (e.g., Walmart, Spotify, Netflix)
- **Payments**: Record money movement.
- Expenses: Money leaving an Account. (Account -> Entity)
- Income: Money entering an Account. (Entity -> Account)
- **Categories** *(optional)*: Add labels to Payments for better tracking.### Your First Steps
- Set up: Create Entities and Accounts that reflect your finances.
- Record a Payment:
- Enter the amount and date.
- Select payor and payee
- *(optional)* Assign a category or enter a note.
- Explore: View your payment history and view your statics at the dashboard### Tips
- Install the website as a PWA for easy access.
- Get in the habit of recording Payments as they happen for accurate tracking.
- Use categories to understand your spending patterns.## Development
Clone this repository and run the following commands:
```bash
## create .env file
cp .env.example .env## start the database
docker compose -f docker/finances-dev/docker-compose.yml up -d## generate prisma client
npx prisma generate## apply database migrations
npx prisma migrate deploy## start the development server
npm run dev```
Then open [http://localhost:3000](http://localhost:3000) with your browser and create an account.
While in development mode, you can generate sample data from the [Account page](http://localhost:3000/account).## Deployment
Copy the [docker-compose.yaml](./docker/finances-prod/docker-compose.yaml) file and
the [.env.example](./docker/finances-prod/.env.example) from 'docker/finances-prod' to your server.Rename the `.env.example` file to `.env` and adjust the required environment variables.
The docker setup expects you to run a Traefik reverse proxy. It will then register itself automatically.
If your setup is different, you will need to adjust the `docker-compose.yaml` file accordingly.The finances containers will automatically register themselves to a running watchtower container if it is present.
Finally run `docker-compose up -d` on your server to start the application.