/Badget

Badget aims to simplify financial management with a user-friendly interface and robust backend

Primary LanguageTypeScriptGNU Affero General Public License v3.0AGPL-3.0

dashboard_mockup

Empower your financial management with Badget - AI-driven insights at your fingertips. Optimize your finances effortlessly.

License

Introduction · Installation · Tech Stack + Features · Credits


Introduction

Welcome to Badget, where we're ushering in a new era of financial management. Leveraging cutting-edge AI, Badget redefines how you track, analyze, and optimize your finances, ensuring smarter, more secure financial decisions.

With Badget, gain unparalleled insights into your spending habits and financial patterns, empowering you to budget better and experience more. Trusted by the world's most innovative companies, Badget is here to revolutionize your financial management experience.

What we are using

Lets goooo - Next.js 14, Turborepo, Prisma, Neon, Next.auth, Resend, React Email, Shadcn/ui, and Stripe.
All seamlessly integrated with the Badget to accelerate the development.

Directory Structure

Badget is a monorepo managed by Turborepo. The monorepo is split between apps and packages directories.

.
├── apps                         # Its app workspace which contains
│    ├── www                     # Nextjs app which is deployed in Vercel
│    ├── api                     # Hono app that is our REST-api for our SDK
│    └── ...
├── packages                     # are the shared packages that are used by the apps 
│    ├── db                      # Prisma DB connector
│    └── ui                      # Shared UI components (Shadcn)
├── tooling                      # are the shared configuration that are used by the apps and packages
│    ├── eslint                  # Shared eslint presets
│    ├── prettier                # Shared prettier configuration
│    ├── tailwind                # Shared tailwind configuration
│    └── typescript              # Shared tsconfig you can extend from
├── LICENSE
└── README.md

Installation

Clone & create this repo locally with the following command:

git clone https://github.com/projectx-codehagen/Badget
  1. Install dependencies using pnpm:
pnpm install
  1. Copy .env.example to .env.local and update the variables.
cp .env.example .env.local
  1. Input everything you need for the env.

    1. Create Neon Database Account
    2. Create Stripe Account
    3. Create Google Console Account
    4. Create Resend Account
  2. Start the development server from either yarn or turbo:

# To start the server
pnpm dev

# To push the DB schema
pnpm --filter=db db:push

REST-API Installation (optional)

If you want to use the REST-api you need to update the hono under apps/api

[vars]
#MY_VAR = "my-variable"
#DATABASE_URL = "Use same link as your db URL"

If you want to deploy it on Cloudflare you need to go run

pnpm run deploy

Roadmap

  • Initial setup
  • Start removing template
  • Update UI to match the product
  • Start stichting frontend with backend

Tech Stack + Features

Frameworks

  • Next.js – React framework for building performant apps with the best developer experience
  • Auth.js – Handle user authentication with ease with providers like Google, Twitter, GitHub
  • Prisma – Typescript-first ORM for Node.js
  • React Email – Versatile email framework for efficient and flexible email development

Platforms

  • Vercel – Easily preview & deploy changes with git
  • Neon – A cutting-edge database platform for seamless, scalable data management
  • Resend – A powerful email framework for streamlined email development
  • Stripe - Payments

UI

  • Tailwind CSS – Utility-first CSS framework for rapid UI development
  • Shadcn/ui – Re-usable components built using Radix UI and Tailwind CSS
  • Framer Motion – Motion library for React to animate components with ease
  • Lucide – Beautifully simple, pixel-perfect icons
  • next/font – Optimize custom fonts and remove external network requests for improved performance
  • ImageResponse – Generate dynamic Open Graph images at the edge

Contributing

We love our contributors! Here's how you can contribute:

  • Open an issue if you believe you've encountered a bug.
  • Make a pull request to add new features/make quality-of-life improvements/fix bugs.

Repo Activity

Nextify repo activity – generated by Axiom