Financegoras is a web application that helps users to manage their finances. It is built with Next.js, Mantine, and TypeScript.
- Dashboard - View your account balance, income, and expenses. Including different charts to visualize your financial data.
- Transactions - Add, edit, and delete transactions.
- Categories - Manage transaction categories.
- Database needed to run the application is not included in the repository
- To setup SQL database, a MYSQL dump file to setup a new DB correctly is provided in the root directory of the project
financegoras.sql - .env file is required to run the application, a sample .env file is provided in the root directory of the project
sample.env - Run
yarn installto install all the dependencies - Run
yarn devto start the application in development mode oryarn buildto build the application and thenyarn startto start the application in production mode
- Database needed to run the application is not included in the repository
- To setup SQL database, a MYSQL dump file to setup a new DB correctly is provided in the root directory of the project
financegoras.sql - Environment variables required in file
prod.env(in project root) on the server to run the application, a list of needed variables is provided in the root directory of the projectsample.env - For SSL, a
cert.pemandpkey.pemfile is required in thenginxdirectory - Then run the following commands in the project root to deploy the application:
# Stop all running containers if needed
docker-compose down# Run the application
docker-compose up -d# Run the application with build
docker-compose up --build -d# Remove images and cache from disk if needed
docker system prune- Database needed to run the application is not included in the repository
- To setup SQL database, a MYSQL dump file to setup a new DB correctly is provided in the root directory of the project
financegoras.sql - Environment variables required to run the application, a list of needed variables is provided in the root directory of the project
sample.env - Then run the following commands in the project root to deploy the application using Docker:
# Stop all running containers if needed
docker stop $(docker ps -a -q)docker build -t financegoras .docker run -p 80:3003 -e DB_URL -e GITHUB_ID -e GITHUB_SECRET -e NEXTAUTH_URL -e NEXTAUTH_SECRET financegoras# Remove images and cache from disk if needed
docker system pruneThis mantine nextjs template comes with the following features:
- PostCSS with mantine-postcss-preset
- TypeScript
- Jest setup with React Testing Library
- ESLint setup with eslint-config-mantine
dev– start dev serverbuild– bundle application for productionanalyze– analyzes application bundle with @next/bundle-analyzer
typecheck– checks TypeScript typeslint– runs ESLintprettier:check– checks files with Prettierjest– runs jest testsjest:watch– starts jest watchtest– runsjest,prettier:check,lintandtypecheckscripts
prettier:write– formats all files with Prettier
