/expensasaurus

Take control of your finances with expensasaurus, the ultimate budgeting tool. Our intuitive platform helps you track expenses, manage budgets, and achieve your financial goals. Get started today and experience hassle-free budget management.

Primary LanguageTypeScriptMIT LicenseMIT

Expensasaurus

Screenshot 2023-06-13 at 11 58 22 PM

Local Setup

  • Make a project on Appwrite
  • Make a database (copy database ID)
  • Make 3 collections (copy their IDs) for expenses, budgets, incomes.
  • Make a bucket (copy ID)
  • Make a .env file containing.
NEXT_PUBLIC_APPWRITE_PROJECT_ID=<project ID>
NEXT_PUBLIC_APPWRITE_ENDPOINT=<appwrite endpoint> (you get this when creating your project on appwrite)
NEXT_PUBLIC_DATABASE_ID=<db ID>
NEXT_PUBLIC_EXPENSES_COLLECTION_ID=<expenses collection ID>
NEXT_PUBLIC_INCOMES_COLLECTION_ID=<incomes collection ID>
NEXT_PUBLIC_BUDGETS_COLLECTION_ID=<budgets collection ID>
NEXT_PUBLIC_BUCKET_ID=<bucket storage ID>
  • Make relevant indexes.
Keeping these interfaces/types in mind. (these are attributes).

Transaction -> expenses / incomes.
Budget -> budget

export interface Transaction {
    amount: number;
    category: string;
    currency: string;
    date: string;
    description: string;
    tag: string;
    title: string;
    userId: string;
    attachments?: string[];
}

export type Budget = {
    title: string;
    description: string;
    userId: string;
    food?: number;
    transportation?: number;
    travel?: number;
    housing?: number;
    healthcare?: number;
    education?: number;
    personal?: number;
    insurance?: number;
    savings?: number;
    investments?: number;
    business?: number;
    utilities?: number;
    other?: number;
    amount: number;
    entertainment?: number;
    startingDate: string;
    endDate: string;
    currency: string;
}

  • Install dependencies
  • yarn dev

Application Workflow

Screenshot 2023-06-12 at 10 32 52 AM

Screenshot

Screenshot 2023-06-11 at 6 15 15 PM Screenshot 2023-06-11 at 6 15 01 PM Screenshot 2023-06-11 at 6 14 53 PM Screenshot 2023-06-11 at 5 30 18 PM