Skip to content

yashas-13/maxwell

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

23 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🏭 Makswel Pharmaceuticals SaaS Platform

Ayurvedic Manufacturing + Digital Ecosystem Blueprint

A production-grade, multi-role business operating system for Ayurvedic pharmaceutical manufacturing, distribution, compliance, and social impact.

Next.js TypeScript PostgreSQL Redis Express Tailwind CSS Vite Docker

License API Roles Screens


Live Demo β€’ API Docs β€’ Architecture β€’ Deploy Guide


πŸ“‹ Table of Contents


🎯 Why Makswel?

Makswel Pharmaceuticals needed a unified digital operating system that spans the entire lifecycle of an Ayurvedic manufacturing business β€” from raw herb sourcing and batch production to B2B distribution, regulatory compliance, and community impact.

This isn't just an ecommerce site. It's a modular monolith covering:

Domain What It Handles
🏭 Manufacturing Formula master, batch production, QC/QA, raw material sourcing
πŸ“¦ Inventory Multi-warehouse stock, lot tracking, expiry management, movements
πŸ’° Commerce B2B wholesale, D2C ordering, dealer portals, price lists
πŸ“‹ Compliance AYUSH licensing, audit trails, document workflows, renewals
πŸ§ͺ Research Publications, peer review, literature repository
πŸ’œ Social Impact Events, scholarships, fundraisers, impact reporting
🀝 CRM Lead management, support tickets, customer engagement
πŸ‘₯ HR & Training Employee management, training courses, enrollment tracking
πŸ“Š Analytics Revenue analytics, product performance, margin analysis
πŸ’Ό Accounts Payments, ledger, journal entries, reconciliation

✨ Features

πŸ” Authentication & Security

  • Passport.js local authentication with bcrypt password hashing
  • Google OAuth 2.0 integration for seamless sign-in
  • Redis-backed sessions for production-grade session management
  • Role-Based Access Control (RBAC) with 8 distinct roles
  • Route protection β€” each dashboard is role-gated at both UI and API level

🏭 Manufacturing Module

  • Batch creation and lifecycle management (planned β†’ in-progress β†’ QC β†’ completed)
  • Raw material sourcing with vendor GSTIN tracking
  • Quality control checks per batch (heavy metals, microbial load, moisture)
  • Material consumption logging with wastage tracking
  • Batch document attachments

πŸ“¦ Inventory Management

  • Multi-warehouse support with location tracking
  • Stock items by type (raw materials, packaging, finished goods)
  • Stock movement history (in, out, transfer, adjustment)
  • Reorder level alerts
  • Lot-level expiry tracking

πŸ’° Commerce & Pricing

  • 20 Ayurvedic/Herbal products with therapeutic classifications
  • Wholesale/MRP dual pricing with margin analysis
  • CSV export for price lists
  • Order lifecycle: pending β†’ confirmed β†’ shipped β†’ delivered
  • Dealer and customer portals

πŸ“‹ Compliance & Audit

  • Manufacturing license management with expiry tracking
  • Compliance task scheduling and assignment
  • Full audit log capturing all state-changing operations
  • AYUSH batch record traceability

πŸ“Š Analytics & Reporting

  • Therapeutic area distribution charts
  • Category breakdown analysis
  • Revenue and margin analytics
  • Product performance dashboards

🀝 CRM & Support

  • Lead management with status pipeline
  • Support ticket system with priority and category
  • Customer engagement tracking

πŸ‘₯ HR & Training

  • Training course management
  • Employee enrollment and progress tracking
  • Course status management

πŸ§ͺ Research & Publications

  • Research project tracking
  • Publication management with journal metadata
  • Peer review workflow

πŸ’œ NGO & Social Impact

  • Event management and scheduling
  • Scholarship program administration
  • Fundraiser tracking with goal progress
  • Beneficiary management

πŸ›  Tech Stack

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                     FRONTEND                            β”‚
β”‚  React 19 Β· TypeScript Β· Vite 6 Β· Tailwind CSS 4       β”‚
β”‚  React Router Β· Recharts Β· Lucide Icons                 β”‚
β”‚  React Hook Form Β· Zod Β· TanStack Query patterns        β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚                     BACKEND                             β”‚
β”‚  Express 5 Β· TypeScript Β· tsx runtime                   β”‚
β”‚  Passport.js (Local + Google OAuth) Β· express-session   β”‚
β”‚  bcryptjs Β· cookie-parser Β· CORS                        β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚                     DATABASE                            β”‚
β”‚  PostgreSQL 17 (primary) Β· Redis 7.2 (sessions/cache)   β”‚
β”‚  30+ database tables Β· UUID primary keys                β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚                     INFRASTRUCTURE                      β”‚
β”‚  Docker Β· Nginx reverse proxy Β· systemd services        β”‚
β”‚  VPS deployment Β· SSL/TLS ready                         β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

πŸ— Architecture

                    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                    β”‚   Client (Browser)    β”‚
                    β”‚   React SPA + Vite    β”‚
                    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                               β”‚
                    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                    β”‚     Nginx (443/80)    β”‚
                    β”‚   SSL Termination     β”‚
                    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                               β”‚
                    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                    β”‚  Express.js (3001)    β”‚
                    β”‚  API + SSR Fallback   β”‚
                    β”‚  Passport.js Auth     β”‚
                    β””β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”˜
                       β”‚      β”‚      β”‚
            β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”  β”Œβ”€β”€β–Όβ”€β”€β”€β”  β”Œβ–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
            β”‚PostgreSQL  β”‚  β”‚Redis β”‚  β”‚  Static    β”‚
            β”‚  (5432)    β”‚  β”‚(6379)β”‚  β”‚  Files     β”‚
            β”‚ 30+ tables β”‚  β”‚Sessionsβ”‚ β”‚  (dist/)   β”‚
            β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β””β”€β”€β”€β”€β”€β”€β”˜  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Module Flow

  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
  β”‚ Sourcing │───▢│ Manufac-  │───▢│   QC /   │───▢│Inventory β”‚
  β”‚  (Raw)   β”‚    β”‚  turing   β”‚    β”‚   QA     β”‚    β”‚  Stock   β”‚
  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜    β””β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”˜
                                                        β”‚
                   β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    β”Œβ”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”
                   β”‚ Accounts │◀───│ Invoicing│◀───│  Orders  β”‚
                   β”‚ & Ledger β”‚    β”‚          β”‚    β”‚          β”‚
                   β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

πŸ“Έ Dashboard Screenshots

πŸ” Authentication

Login Register
Login Register

πŸ›‘οΈ Admin Dashboard

Overview User Management Audit Log
Admin Dashboard Admin Users Admin Audit
Products Orders Manufacturing
Admin Products Admin Orders Admin Manufacturing
Inventory Compliance CRM
Admin Inventory Admin Compliance Admin CRM
Support Accounts Training
Admin Support Admin Accounts Admin Training
Research Events Scholarships Roles
Admin Research Admin Events Admin Scholarships Admin Roles

🏭 Manufacturer Dashboard

Manufacturing Overview
Manufacturer Dashboard

πŸͺ Dealer Dashboard

Dealer Overview Products Orders
Dealer Dashboard Dealer Products Dealer Orders

πŸ›’ Customer Dashboard

Customer Overview Products
Customer Dashboard Customer Products

πŸ§ͺ QC Inspector Dashboard

QC Overview
QC Dashboard

πŸ’Ό Accountant Dashboard

Accounts Overview
Accountant Dashboard

🎧 Support Dashboard

Support Overview
Support Dashboard

πŸ‘₯ HR Dashboard

HR Overview
HR Dashboard

πŸ” Role-Based Access Control

Makswel implements 8 distinct roles with fine-grained route and API protection:

Role Description Accessible Modules
admin Full system access All modules
manufacturer Manufacturing operations Manufacturing, Compliance, Products
dealer Wholesale partner portal Dealer Portal, Products, Prices, Orders
customer Retail buyer portal Customer Portal, Products, Prices, Orders
qc_inspector Quality control staff Compliance, QC checks, Batch verification
accountant Financial operations Accounts, Payments, Ledger, Journal
support Customer support team CRM, Support Tickets, Lead Management
hr_manager Human resources HR Dashboard, Training, Enrollments

How RBAC Works

1. User logs in β†’ Passport.js validates credentials
2. Session created β†’ Stored in Redis with user ID + role
3. Frontend checks role β†’ ProtectedRoute component gates UI
4. API checks role β†’ Middleware verifies session role on each request
5. Sidebar adapts β†’ Only visible nav items for current role

Route Protection Example:

<ProtectedRoute roles={['admin', 'manufacturer']}>
  <ManufacturerDashboard />
</ProtectedRoute>

API Protection Pattern:

router.get('/api/manufacturing/batches', async (req: any, res) => {
  if (!req.session?.userId) return res.status(401).json({ error: 'Unauthorized' })
  // Role-specific logic...
})

🌐 API Endpoints

Authentication

Method Endpoint Description
POST /api/auth/register Register new dealer/customer
POST /api/auth/login Email + password login
POST /api/auth/logout Destroy session
GET /api/auth/me Get current user
GET /api/auth/google Google OAuth redirect
GET /api/auth/google/callback Google OAuth callback

Products & Commerce

Method Endpoint Description
GET /api/products List all products with variants
GET /api/orders List orders (filtered by role)
POST /api/orders Create new order
GET /api/stats Dashboard statistics

Admin

Method Endpoint Description
GET /api/admin/users List all users
PATCH /api/admin/users/:id Update user (role, status)
DELETE /api/admin/users/:id Delete user
GET /api/admin/audit-log Full audit trail
GET /api/roles List all roles

Manufacturing

Method Endpoint Description
GET /api/manufacturing/batches List manufacturing batches
POST /api/manufacturing/batches Create batch
PATCH /api/manufacturing/batches/:id/status Update batch status
GET /api/manufacturing/qc/:batchId QC checks for batch
POST /api/manufacturing/qc Submit QC result
GET /api/manufacturing/raw-materials List raw materials
POST /api/manufacturing/raw-materials Add raw material

Inventory

Method Endpoint Description
GET /api/inventory/warehouses List warehouses
POST /api/inventory/warehouses Create warehouse
GET /api/inventory/stock List stock items
POST /api/inventory/stock Add stock item
GET /api/inventory/stock/:warehouseId Stock by warehouse
GET /api/inventory/movements Stock movement history
POST /api/inventory/movements Record stock movement

CRM & Support

Method Endpoint Description
GET /api/crm/leads List CRM leads
POST /api/crm/leads Create lead
PATCH /api/crm/leads/:id Update lead
PATCH /api/crm/leads/:id/status Change lead status
GET /api/support/tickets List support tickets
POST /api/support/tickets Create ticket
PATCH /api/support/tickets/:id Update ticket

Compliance

Method Endpoint Description
GET /api/compliance/licenses List licenses
POST /api/compliance/licenses Add license
GET /api/compliance/tasks List compliance tasks
POST /api/compliance/tasks Create task

Accounts

Method Endpoint Description
GET /api/accounts/payments Payment history
GET /api/accounts/ledger Account ledger
GET /api/accounts/journal Journal entries

Training & HR

Method Endpoint Description
GET /api/training/courses List courses
POST /api/training/courses Create course
PATCH /api/training/courses/:id Update course
GET /api/training/enrollments List enrollments

Research

Method Endpoint Description
GET /api/research/projects List research projects
POST /api/research/projects Create project
GET /api/research/publications List publications

Social Impact

Method Endpoint Description
GET /api/events List events
POST /api/events Create event
GET /api/scholarships List scholarships
POST /api/scholarships Create scholarship

πŸ—„ Database Schema

Core Tables (30+)

IDENTITY & ACCESS
β”œβ”€β”€ users              (id, email, password_hash, name, role, company, gstin, ...)
β”œβ”€β”€ roles              (id, name, permissions)

PRODUCTS & COMMERCE
β”œβ”€β”€ products           (id, sku, name, category, formulation, ingredients, ...)
β”œβ”€β”€ product_variants   (id, product_id, pack_size, wholesale_price, mrp_price, ...)
β”œβ”€β”€ orders             (id, user_id, status, total_amount, ...)
└── order_items        (id, order_id, product_id, quantity, unit_price, ...)

MANUFACTURING
β”œβ”€β”€ batches            (id, product_id, batch_no, status, planned_qty, ...)
β”œβ”€β”€ batch_material_consumption (id, batch_id, ingredient_id, qty_used, ...)
β”œβ”€β”€ batch_quality_checks (id, batch_id, test_type, result, passed, ...)
└── raw_materials      (id, name, botanical_name, vendor_gstin, ...)

INVENTORY
β”œβ”€β”€ warehouses         (id, name, location, ...)
β”œβ”€β”€ stock_items        (id, warehouse_id, item_type, qty_on_hand, ...)
β”œβ”€β”€ stock_movements    (id, stock_item_id, movement_type, qty, ...)
└── inventory_lots     (id, stock_item_id, lot_no, expiry_date, ...)

CRM & SUPPORT
β”œβ”€β”€ crm_leads          (id, name, source, status, assigned_to, ...)
└── support_tickets    (id, created_by, subject, priority, status, ...)

COMPLIANCE
β”œβ”€β”€ compliance_licenses (id, license_type, license_no, expiry_date, ...)
β”œβ”€β”€ compliance_tasks   (id, task_type, due_date, status, ...)
└── audit_logs         (id, actor_user_id, action, entity_type, ...)

TRAINING & HR
β”œβ”€β”€ training_courses   (id, title, category, status, ...)
β”œβ”€β”€ training_enrollments (id, course_id, user_id, progress, ...)
└── employees          (id, user_id, designation, department, ...)

RESEARCH
β”œβ”€β”€ research_projects  (id, title, synopsis, status, ...)
└── research_publications (id, title, journal_name, doi, ...)

SOCIAL IMPACT
β”œβ”€β”€ events             (id, name, event_type, start_date, ...)
└── scholarships       (id, name, eligibility, total_amount, ...)

ACCOUNTS
β”œβ”€β”€ accounts_payments  (id, invoice_id, amount, method, status, ...)
β”œβ”€β”€ accounts_ledger    (id, account_id, debit, credit, ...)
└── accounts_journal   (id, entry_date, narration, ...)

πŸš€ Getting Started

Prerequisites

  • Node.js 20+
  • PostgreSQL 17
  • Redis 7+

Quick Start

# Clone the repository
git clone https://github.com/yashas-13/maxwell.git
cd maxwell

# Install dependencies
npm install

# Set up environment
cp .env.example .env
# Edit .env with your credentials

# Set up database
psql -U postgres -c "CREATE USER makswell WITH PASSWORD 'yourpassword';"
psql -U postgres -c "CREATE DATABASE makswell OWNER makswell;"

# Start development
npm run dev

Default Admin Credentials

Email:    cyberjeet13@gmail.com
Password: admin123

Available Scripts

Command Description
npm run dev Start frontend (Vite) + backend (Express) concurrently
npm run dev:client Frontend only on :5173
npm run dev:server Backend only on :3001
npm run build Build production bundle
npm start Start production server

🌐 Deployment

Production Setup (Ubuntu VPS)

# 1. Install Node.js, PostgreSQL, Redis
curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash -
sudo apt install -y nodejs postgresql redis-server nginx

# 2. Clone and build
git clone https://github.com/yashas-13/maxwell.git /var/www/makswell
cd /var/www/makswell
npm install
npm run build

# 3. Configure systemd service
sudo tee /etc/systemd/system/makswell.service <<EOF
[Unit]
Description=Makswell Pharmaceuticals SaaS
After=network.target postgresql.service redis.service

[Service]
Type=simple
User=www-data
WorkingDirectory=/var/www/makswell
ExecStart=/usr/bin/node --import tsx server/index.ts
Restart=always
Environment=NODE_ENV=production
Environment=PORT=3001

[Install]
WantedBy=multi-user.target
EOF

sudo systemctl enable makswell
sudo systemctl start makswell

# 4. Configure Nginx
sudo tee /etc/nginx/sites-available/makswell <<EOF
server {
    listen 80;
    server_name makswell.tech;

    location / {
        proxy_pass http://127.0.0.1:3001;
        proxy_http_version 1.1;
        proxy_set_header Upgrade \$http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host \$host;
        proxy_set_header X-Real-IP \$remote_addr;
        proxy_cache_bypass \$http_upgrade;
    }
}
EOF

sudo ln -s /etc/nginx/sites-available/makswell /etc/nginx/sites-enabled/
sudo nginx -t && sudo systemctl reload nginx

# 5. Enable SSL
sudo certbot --nginx -d makswell.tech

βš™οΈ Environment Variables

Variable Description Required
DATABASE_URL PostgreSQL connection string βœ…
REDIS_URL Redis connection string βœ…
SESSION_SECRET Express session signing key βœ…
GOOGLE_CLIENT_ID Google OAuth client ID Optional
GOOGLE_CLIENT_SECRET Google OAuth client secret Optional
GOOGLE_CALLBACK_URL OAuth callback URL Optional
PORT Server port (default: 3001) Optional
NODE_ENV development or production Optional

πŸ“ Project Structure

makswel-saas/
β”œβ”€β”€ server/                    # Backend (Express.js + TypeScript)
β”‚   β”œβ”€β”€ index.ts               # Server entry, middleware, auth config
β”‚   β”œβ”€β”€ db.ts                  # PostgreSQL connection pool
β”‚   └── routes/
β”‚       └── manufacturing.ts   # All 60+ API route handlers
β”œβ”€β”€ src/                       # Frontend (React + TypeScript)
β”‚   β”œβ”€β”€ App.tsx                # Router config + role-based routes
β”‚   β”œβ”€β”€ main.tsx               # App entry point
β”‚   β”œβ”€β”€ context/
β”‚   β”‚   └── AuthContext.tsx     # Auth state, login, register, RBAC types
β”‚   β”œβ”€β”€ components/
β”‚   β”‚   β”œβ”€β”€ Sidebar.tsx         # Role-adaptive navigation sidebar
β”‚   β”‚   └── ProtectedRoute.tsx  # Route guard component
β”‚   β”œβ”€β”€ pages/
β”‚   β”‚   β”œβ”€β”€ Login.tsx           # Email/password + Google OAuth login
β”‚   β”‚   β”œβ”€β”€ Register.tsx        # Dealer/Customer registration
β”‚   β”‚   β”œβ”€β”€ Dashboard.tsx       # Main dashboard with stats
β”‚   β”‚   β”œβ”€β”€ ProductCatalog.tsx  # 20 Ayurvedic products with search
β”‚   β”‚   β”œβ”€β”€ PriceList.tsx       # Wholesale/MRP pricing + CSV export
β”‚   β”‚   β”œβ”€β”€ Orders.tsx          # Order management by role
β”‚   β”‚   β”œβ”€β”€ Dealers.tsx         # Dealer directory (admin)
β”‚   β”‚   β”œβ”€β”€ Analytics.tsx       # Revenue & product analytics
β”‚   β”‚   β”œβ”€β”€ admin/
β”‚   β”‚   β”‚   β”œβ”€β”€ AdminDashboard.tsx
β”‚   β”‚   β”‚   β”œβ”€β”€ AdminUsers.tsx
β”‚   β”‚   β”‚   └── AdminAudit.tsx
β”‚   β”‚   β”œβ”€β”€ manufacturer/
β”‚   β”‚   β”‚   └── ManufacturerDashboard.tsx
β”‚   β”‚   β”œβ”€β”€ dealer/
β”‚   β”‚   β”‚   └── DealerDashboard.tsx
β”‚   β”‚   β”œβ”€β”€ customer/
β”‚   β”‚   β”‚   └── CustomerDashboard.tsx
β”‚   β”‚   β”œβ”€β”€ compliance/
β”‚   β”‚   β”‚   └── ComplianceDashboard.tsx
β”‚   β”‚   β”œβ”€β”€ crm/
β”‚   β”‚   β”‚   └── CRMDashboard.tsx
β”‚   β”‚   β”œβ”€β”€ accounts/
β”‚   β”‚   β”‚   └── AccountsDashboard.tsx
β”‚   β”‚   β”œβ”€β”€ hr/
β”‚   β”‚   β”‚   └── HRDashboard.tsx
β”‚   β”‚   β”œβ”€β”€ research/
β”‚   β”‚   β”‚   └── ResearchDashboard.tsx
β”‚   β”‚   └── ngo/
β”‚   β”‚       └── NGODashboard.tsx
β”‚   └── lib/
β”‚       └── utils.ts
β”œβ”€β”€ screenshots/               # 72 dashboard screenshots
β”œβ”€β”€ dist/                      # Production build output
β”œβ”€β”€ .env                       # Environment secrets (gitignored)
β”œβ”€β”€ .env.example               # Template for environment variables
β”œβ”€β”€ package.json
β”œβ”€β”€ tsconfig.json
β”œβ”€β”€ vite.config.ts
β”œβ”€β”€ tailwind.config.ts
└── README.md

πŸ“Š Product Catalog

Makswel's catalog includes 20 proprietary Ayurvedic medicines across therapeutic categories:

Product Category Form Therapeutic Area
Livozone Liver Care Capsule Yakrut Vikaara
Asmane Respiratory Tablet Shwasa Roga
Garmax Musculoskeletal Capsule Sandhigata Vata
Ashwagandha Plus Adaptogen Capsule Rasayana
Triphala Churna Digestive Powder Vata Balancing
Punarnava Mandur Blood Purifier Tablet Raktashodhaka
Chandraprabha Vati Urinary Tablet Mutravaha Srotas
Sutshekhar Ras Digestive Tablet Amlapitta
Arogyavardhini Vati Hepatic Tablet Yakrut Roga
Mahamanjisthadi Kvath Blood Liquid Raktapitta
Dashamula Kashayam Anti-inflammatory Liquid Vata disorders
Bhumyamalaki Syrup Hepatoprotective Syrup Udara Roga
Kaishore Guggulu Anti-inflammatory Tablet Amavata
Triphala Guggulu Digestive Tablet Obesity
Gokshuradi Guggulu Urinary Tablet Mutra Roga
Yogaraj Guggulu Musculoskeletal Tablet Sandhivata
PanchTikta Ghruta Skin Liquid Kushtha
Mahatikta Ghruta Skin/Pitta Liquid Yonivyapad
Khadiradi Vati Throat/Dental Lozenge Mukha Roga
Laxmivilas Ras Respiratory Tablet Kasa Shwasa

🀝 Contributing

This is a proprietary platform for Makswel Pharmaceuticals. For internal development:

  1. Create a feature branch
  2. Make changes with TypeScript strict mode
  3. Ensure all role-based routes are properly protected
  4. Test with all 8 user roles
  5. Submit PR with description

πŸ“„ License

Proprietary β€” Makswel Pharmaceuticals. All rights reserved.


Built with πŸ’Š for Ayurvedic Manufacturing Excellence

From raw herb sourcing to patient impact β€” one platform, every workflow.

About

🏭 Ayurvedic Manufacturing + Digital Ecosystem SaaS β€” 8-role RBAC, 60+ API endpoints, 30+ DB tables, manufacturing, inventory, commerce, compliance, CRM, HR, research, NGO modules. React + Express + PostgreSQL + Redis.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages