A simple and secure way to track receipts, split expenses, and manage subscriptions—perfect for individuals and groups.
Catalog is a personal accounting application that helps individuals and groups seamlessly manage and store digital receipts, split expenses, detect recurring subscriptions, and generate meaningful spending insights. By providing a centralized dashboard for receipts, automated reminders for bills and subscriptions, and advanced analytics, we aim to simplify personal and group financial management.
- 🧾 Receipt Management: Upload, store, and categorize receipts with OCR capabilities.
- 💸 Expense Splitting: Automatically split bills for trips, events, or household costs.
- 📊 Financial Insights: Track spending trends, category breakdowns, and predictive insights.
- 🔄 Subscription Management: Get notified about recurring subscriptions before they renew.
- 📱 Notifications: Stay on top of due payments, renewals, overspending, and group updates.
- 🔐 Security: AES-256 encryption, secure authentication, and web vulnerability protection.
- Disorganized Receipts: Digitize and organize your receipts automatically.
- Expense Splitting: Automate shared costs with a clean dashboard.
- Subscription Management: Track and get notified of recurring charges.
- Financial Visibility: View holistic spending patterns through aggregated data.
- Security: AES-256 encryption and robust security practices ensure safety.
Before you begin, make sure you have the following installed:
- Python (v3.10 or higher)
- Django (for backend)
- Node.js (for frontend, if using Next.js)
- Tesseract OCR or Google Vision API (for parsing receipts)
- Plaid or Flinks API (for financial aggregation)
- PostgreSQL (for database)
Follow these steps to get the project up and running:
- Clone the repository:
git clone https://github.com/your-username/Catalog.git
- Navigate to the project directory:
cd Catalog - Set up the backend:
- Install Python dependencies:
pip install -r requirements.txt
- Set up the database:
python manage.py migrate
- Install Python dependencies:
- Set up the frontend:
- Install Node.js dependencies:
npm install
- Start the development server:
npm run dev
- Install Node.js dependencies:
- Run the application:
python manage.py runserver
You should now be able to access the application locally.
We welcome your contributions! Here's how to get involved:
- Git Flow: We follow NOT use Git Flow and will instead checkout branches from main and peer review before merging in
- Issue Tracking: All bugs and feature requests are tracked in GitHub Issues.
- Pull Requests: Submit a pull request with a detailed description of the changes you’ve made. Ensure your code passes all tests and follows our coding standards.
- Open an issue to propose any changes you’d like to work on.
- Fork the repository and create a new branch for your changes.
- Make the necessary changes and test them thoroughly.
- Submit a pull request and reference the issue it addresses.