Skip to content

emmanuelJet/danbooks

Repository files navigation

DanBooks

DanBooks is an intuitive bookkeeping web application designed for local entrepreneurs, freelance professionals, and small business owners. Built as an MVP, it enables users to record, categorise, and visualise their business incomes and expenses effortlessly.

This is a project built by Emmanuel Joseph (JET) during the "The Vibe Coding Era: Building Software with AI" session at the ATC Africa EKSU Chapter event on Saturday, 25th April, 2026. See product documentation in docs

Screenshots

View Dashboard Screenshots

Dashboard Light Mode Dashboard - Light Mode

Dashboard Dark Mode Dashboard - Dark Mode

View Transactions Screenshots

Transactions Light Mode Transactions List - Light Mode

Transactions Dark Mode Transactions List - Dark Mode

Key Features

  • Quick Dashboard: Immediate overview of Net Balance, Total Income, and Total Expenses with a snapshot of recent transactions.
  • Transaction Management: An intuitive form interface to log categorized incomes and expenses.
  • Zero Configuration DB: Utilizes native localStorage for complete data persistence strictly on the client side, meaning no external databases to configure or manage!
  • Zero Authentications required: Opens immediately on load. Ready to accept data securely within the browser storage.

Technical Stack

  • Framework: Next.js (App Router), React
  • Styling: Tailwind CSS V4
  • Storage Strategy: Client-side Web Local Storage API (SSR Safe implementations via React Hooks)
  • Icons: Lucide React (lucide-react)
  • Typography: Inter (via next/font/google)

Getting Started

1. Prerequisites

Ensure you have Node.js (v18.x or above) installed.

2. Install Dependencies

npm install

3. Run the Development Server

npm run dev

Open http://localhost:3000 with your browser to see the result.

Architecture Notes

This project adheres to a strict Zero-Dependency philosophy outside of core Next.js packages. Instead of relying on date-fns, clsx, or axios, everything from class concatenation to local date formatting uses native ES6 JavaScript functionalities like Intl.DateTimeFormat.

Disclaimer

By running this application locally or accessing it via a hosted environment (such as GitHub Pages), you acknowledge and agree that all financial data is stored entirely within your browser's Local Storage. We do not transmit, collect, or store your data on any external servers. Consequently, you are solely responsible for the management, backup, and security of your stored details. The creator(s) of DanBooks assume no liability for any incidental data loss or privacy breaches arising from local browser usage.