Skip to content

Latest commit

Β 

History

58 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Tally πŸ’°

Tally is a modern accounting app designed for streamlined cashflow logging and tracking, built specifically for small business owners and independent service providers.

πŸš€ Live Demo

Tally - Your one-stop accountant for small businesses

✨ Features

πŸ” Authentication

  • Secure user authentication with Supabase Auth
  • Email/password login and registration
  • Protected dashboard routes
  • Session management

πŸ’Ό Services Management

  • Create, read, update, and delete services
  • Organize services by categories (e.g., Lash Extensions, Nails, Hair)
  • Set default pricing for each service
  • Add descriptions and duration details
  • Autocomplete category suggestions

πŸ’΅ Income Tracking

  • Log income transactions with detailed information
  • Link transactions to services with automatic price filling
  • Apply discounts to services
  • Track client names for repeat business
  • Multiple payment method support (Cash, Card, Bank Transfer, PayPal, Other)
  • View income summary with total revenue and transaction count
  • Responsive table view (desktop) and card view (mobile)

πŸ’Έ Spending Tracking

  • Record business expenses and spending
  • Categorize spending (e.g., Supplies, Rent, Marketing)
  • Track payment methods
  • Add optional notes for additional context
  • View spending summary with total expenses and transaction count
  • Responsive design for all screen sizes

πŸ“Š Dashboard

  • Quick overview of business finances
  • Summary cards for income and spending
  • Recent transaction lists
  • Mobile-responsive layout

πŸ“± Mobile Experience

  • Fully responsive design for mobile, tablet, and desktop
  • Hamburger menu navigation on mobile devices
  • Touch-friendly interfaces
  • Optimized card layouts for small screens

πŸŒ™ Dark Mode

  • Full dark mode support across all pages
  • Automatic theme detection
  • Smooth theme transitions

πŸ› οΈ Tech Stack

  • Framework: Next.js 16.0.4 (App Router)
  • Language: TypeScript
  • Styling: Tailwind CSS
  • Database: Supabase (PostgreSQL)
  • Authentication: Supabase Auth
  • Deployment: Vercel
  • Icons: Lucide React

πŸ“ Project Structure

tally-app/
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ app/
β”‚   β”‚   β”œβ”€β”€ (auth)/           # Authentication pages (login, signup)
β”‚   β”‚   β”œβ”€β”€ dashboard/         # Protected dashboard routes
β”‚   β”‚   β”‚   β”œβ”€β”€ income/       # Income tracking pages
β”‚   β”‚   β”‚   β”œβ”€β”€ services/     # Services management pages
β”‚   β”‚   β”‚   β”œβ”€β”€ spending/     # Spending tracking pages
β”‚   β”‚   β”‚   └── layout.tsx    # Dashboard layout with navigation
β”‚   β”‚   └── page.tsx          # Landing page
β”‚   β”œβ”€β”€ components/           # Reusable UI components
β”‚   β”œβ”€β”€ lib/                  # Utility functions and configs
β”‚   └── types/                # TypeScript type definitions
β”œβ”€β”€ supabase/
β”‚   └── migrations/           # Database migration files
└── public/                   # Static assets

πŸš€ Getting Started

Prerequisites

  • Node.js 18+ installed
  • Supabase account and project
  • npm, yarn, pnpm, or bun package manager

Installation

  1. Clone the repository:
git clone https://github.com/alexYooDev/tally-app.git
cd tally-app
  1. Install dependencies:
npm install
# or
yarn install
# or
pnpm install
# or
bun install
  1. Set up environment variables: Create a .env.local file in the root directory:
NEXT_PUBLIC_SUPABASE_URL=your_supabase_url
NEXT_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key
  1. Run database migrations:
  • Go to your Supabase project SQL Editor
  • Run the migration files in supabase/migrations/ in order
  1. Start the development server:
npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun dev
  1. Open http://localhost:3000 in your browser

πŸ—„οΈ Database Schema

Tables

  • users - User authentication and profiles
  • services - Business services catalog
  • income_transactions - Income records
  • spending_transactions - Expense records
  • categories - Service and spending categories (with type filtering)

Key Relationships

  • Services β†’ Categories (many-to-one)
  • Income Transactions β†’ Services (many-to-one)
  • Income Transactions β†’ Users (many-to-one)
  • Spending Transactions β†’ Categories (many-to-one)
  • Spending Transactions β†’ Users (many-to-one)

🎨 Features in Detail

Category Management

  • Type-based filtering (service vs. spending categories)
  • Autocomplete suggestions using HTML5 datalist
  • Create categories on-the-fly while adding services/transactions
  • Clear category selection with X buttons

Income Features

  • Service-based pricing with automatic price filling
  • Discount application
  • Total received calculation (price - discount)
  • Client name tracking for customer relationship management
  • Date validation (cannot select future dates)

Spending Features

  • Flexible categorization
  • Description field for transaction details
  • Payment method tracking
  • Optional notes for additional context

Responsive Design

  • Desktop: Full table views with all transaction details
  • Mobile: Card-based layouts optimized for touch
  • Tablet: Adaptive layouts that work across breakpoints
  • Hamburger menu for mobile navigation

🚧 Roadmap

  • Dashboard analytics with charts and graphs
  • Export data to CSV/PDF
  • Category management page
  • Date range filtering
  • Search and advanced filtering
  • Multi-currency support
  • Recurring transactions
  • Client management system
  • Invoice generation

πŸ“„ License

This project is open source and available under the MIT License.

🀝 Contributing

Contributions, issues, and feature requests are welcome! Feel free to check the issues page.

πŸ‘¨β€πŸ’» Author

Alex Yoo


Built with ❀️ using Next.js and Supabase

About

Tally is an accounting app for streamlined cashflow logging and tracking for all small/independent business owners

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages