Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/umarsaeedalam/cashflow-dojo
Modern expense tracking application built with Next.js, featuring analytics, multi-currency support, and a sleek theme interface. Track, analyze, and master your financial habits. ๐ฐ
https://github.com/umarsaeedalam/cashflow-dojo
authjs mysql nextjs react shadcn-ui tailwind typescript vercel
Last synced: 11 days ago
JSON representation
Modern expense tracking application built with Next.js, featuring analytics, multi-currency support, and a sleek theme interface. Track, analyze, and master your financial habits. ๐ฐ
- Host: GitHub
- URL: https://github.com/umarsaeedalam/cashflow-dojo
- Owner: umarsaeedalam
- Created: 2024-10-29T16:17:19.000Z (about 2 months ago)
- Default Branch: main
- Last Pushed: 2024-12-10T22:57:27.000Z (14 days ago)
- Last Synced: 2024-12-10T23:28:17.081Z (14 days ago)
- Topics: authjs, mysql, nextjs, react, shadcn-ui, tailwind, typescript, vercel
- Language: TypeScript
- Homepage: https://cashflowdojo.vercel.app
- Size: 849 KB
- Stars: 6
- Watchers: 1
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Cashflow Dojo
A personal portfolio project that delivers a modern, intuitive expense tracking application. Cashflow Dojo helps users take control of their finances through comprehensive expense monitoring, detailed spending analysis, and actionable insights into financial habits - all wrapped in a sleek, user-friendly interface.
## ๐ธ Snippet
![Cashflow Dojo Overview](/public/og-image.png)
## โจ Features
### Comprehensive Expense Management
- ๐งพ Easy expense entry with detailed categorization
- ๐ View, edit, and delete expense records
- ๐ท๏ธ Diverse categorization system with 11 preset categories
- ๐ผ Multi-currency support with 18 major currencies### Advanced Analytics
- ๐ Interactive charts and visualizations
- ๐ Monthly spending patterns analysis
- ๐ฏ Category-wise expense breakdown
- ๐ก Smart insights on spending habits### User Experience
- ๐ Modern, clean interface
- ๐ฑ Fully responsive design for all devices
- โก Real-time updates and smooth transitions
- ๐ Advanced filtering and sorting capabilities### Security & Authentication
- ๐ Secure authentication via Google and GitHub
- ๐ Protected routes and data privacy
- ๐ค Personalized user profiles## ๐ Getting Started
### Prerequisites
- Node.js 18.0 or higher
- npm or yarn package manager
- A modern web browser### Installation
1. Clone the repository:
```bash
git clone https://github.com/umarsaeedalam/cashflow-dojo.git
```
2. Navigate to the project directory:
```bash
cd cashflow-dojo
```
3. Install dependencies
```bash
npm install
# or
yarn install
```
4. Set up environment variables:
Create a `.env.local` file in the root directory and add the following variables:
```bash
# Auth Providers
GOOGLE_CLIENT_ID=your_google_client_id
GOOGLE_CLIENT_SECRET=your_google_client_secret
GITHUB_CLIENT_ID=your_github_client_id
GITHUB_CLIENT_SECRET=your_github_client_secret# Database
DATABASE_URL=your_database_url# Auth
NEXTAUTH_URL=http://localhost:3000
NEXTAUTH_SECRET=your_nextauth_secret
```
5. Run the development server
```bash
npm run dev
# or
yarn dev
```
6. Open http://localhost:3000 in your browser.## ๐ ๏ธ Tech Stack
### Frontend
- **Next.js** - React framework for production
- **React** - UI library
- **TypeScript** - Static typing
- **Tailwind CSS** - Utility-first CSS framework
- **shadcn/ui** - UI component library
- **Recharts** - Chart library for data visualization
- **React Hook Form** - Form handling
- **Zod** - Schema validation### Authentication
- **NextAuth.js** - Authentication solution
- Support for Google and GitHub providers### Development Tools
- ESLint - Code linting
- Prettier - Code formatting
- Husky - Git hooks
- PostCSS - CSS processing## ๐ฑ Responsive Design
Cashflow Dojo is built with a desktop-first approach, ensuring a seamless experience across all devices:
## ๐จ Customization
### Theme Configuration
The application uses a custom theme with the following color palette:
```css
:root {
--primary: #bde9c9;
--secondary: #2d8c47;
--accent: #ea5166;
--neutral: #fcf9e0;
}
```## ๐ Project Structure
```
cashflow-dojo/
โโโ src/
โ โโโ app/ # Next.js app directory
โ โโโ components/ # React components
โ โ โโโ feature/ # Feature-specific components
โ โ โ โโโ analytics/ # Analytics page components
โ โ โ โโโ expenses/ # Expenses page components
โ โ โ โโโ overview/ # Overview page components
โ โ โโโ layout/ # Layout components
โ โ โโโ ui/ # Reusable UI components
โ โ โโโ shadcn/ # Shadcn UI components
โ โโโ fonts/ # Custom font files
โ โโโ lib/ # Core utility functions
โ โโโ styles/ # Styling files
โ โโโ utils/ # Helper functions
```## ๐ค Contributing
Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.
1. Fork the repository
2. Create your feature branch (git checkout -b feature/AmazingFeature)
3. Commit your changes (git commit -m 'Add some AmazingFeature')
4. Push to the branch (git push origin feature/AmazingFeature)
5. Open a Pull Request## ๐ง Contact
If you have any questions, feel free to reach out:
- Email: [email protected]
- LinkedIn: www.linkedin.com/in/umarsaeedalam