Skip to content

abhayror17/Tabsons-ERP-APP

Repository files navigation

Tabsons ERP

A comprehensive ERP system for Tabsons (antenna dishes ODM manufacturer) with two plants support.

Project Structure

tabsons-erp/
├── backend/          # Node.js + Express + Prisma API
├── frontend/         # React + Tailwind CSS SPA
├── task.md          # Project requirements
├── Beggining.md     # Detailed specifications
└── README.md        # This file

Features

Core Modules

  • Authentication & Users: Login/logout, role-based permissions (Admin, Accountant, Sales, Warehouse)
  • Dashboard: Today's sales, pending receivables, low stock alerts, quick shortcuts
  • Products & Inventory: CRUD operations, stock management, multi-warehouse support
  • Customers & Vendors: Contact management, opening balances, payment history
  • Sales Module: Invoice creation, returns, receipts, PDF generation
  • Purchase Module: Bills, returns, payments, auto stock addition
  • Accounting: Chart of accounts, ledger, trial balance, P&L, balance sheet
  • Reports: PDF/Excel export capabilities

Technical Architecture

  • Frontend: React 18 + TypeScript + Tailwind CSS + React Router
  • Backend: Node.js + Express + TypeScript + Prisma ORM
  • Database: PostgreSQL
  • Authentication: JWT tokens
  • Deployment: Ready for Railway/Render (backend) + Vercel/Netlify (frontend)

Setup Instructions

Prerequisites

  • Node.js 18+
  • PostgreSQL 14+
  • npm or yarn

Backend Setup

  1. Navigate to backend directory:
cd backend
  1. Install dependencies:
npm install
  1. Set up environment variables:
cp .env.example .env

Edit .env with your database URL and JWT secrets:

DATABASE_URL="postgresql://username:password@localhost:5432/tabsons_erp"
JWT_SECRET="your-super-secret-jwt-key"
JWT_REFRESH_SECRET="your-super-secret-refresh-key"
PORT=4000
NODE_ENV="development"
FRONTEND_URL="http://localhost:3000"
  1. Generate Prisma client:
npx prisma generate
  1. Run database migrations:
npx prisma migrate dev --name init
  1. Start development server:
npm run dev

The API will be available at http://localhost:4000

Frontend Setup

  1. Navigate to frontend directory:
cd frontend
  1. Install dependencies:
npm install
  1. Start development server:
npm run dev

The frontend will be available at http://localhost:3000

API Endpoints

Authentication

  • POST /api/auth/register - Register new user
  • POST /api/auth/login - User login
  • GET /api/auth/me - Get current user

Products

  • GET /api/products - List products
  • POST /api/products - Create product
  • GET /api/products/:id - Get product
  • PUT /api/products/:id - Update product
  • DELETE /api/products/:id - Delete product

Customers

  • GET /api/customers - List customers
  • POST /api/customers - Create customer
  • GET /api/customers/:id - Get customer
  • PUT /api/customers/:id - Update customer
  • DELETE /api/customers/:id - Delete customer

Sales

  • GET /api/sales - List sales invoices
  • POST /api/sales - Create sales invoice

And more...

Database Schema

The application uses the following main entities:

  • Company, Plant, Warehouse (multi-location support)
  • Products, Stock Movements (inventory tracking)
  • Customers, Vendors (contacts)
  • Sales, Sales Items (sales management)
  • Purchase, Purchase Items (procurement)
  • Accounts, Journal Entries (accounting)
  • Users, Roles (authentication)

See backend/prisma/schema.prisma for complete schema.

Development Phases

Phase 1 (7-15 days) - MVP

  • ✅ Authentication system
  • ✅ Products management
  • ✅ Customer management
  • ✅ Sales invoice creation
  • ✅ Inventory auto-update

Phase 2 (8-12 days)

  • Purchase management
  • Basic accounting
  • Dashboard widgets
  • Reports with PDF export

Phase 3

  • Multi-warehouse advanced features
  • Manufacturing/BOM support
  • E-commerce integration
  • Auto reminders (SMS/Email)

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests if applicable
  5. Submit a pull request

License

This project is proprietary to Tabsons.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages