A professional CA & GST automation platform built with Next.js 14, TypeScript, and TailwindCSS.
KiroTax Console is a banking-grade dashboard for CA firms to manage document processing, GST compliance, and investment tracking with role-based access control.
This project includes comprehensive documentation with visual diagrams:
-
DIAGRAMS_INDEX.md - Central index for all diagrams and quick reference guide
- Visual architecture diagrams
- Technology stack visualization
- RBAC hierarchy
- Workflow diagrams
- Quick reference for all roles and permissions
-
ARCHITECTURE.md - Complete system architecture documentation
- System architecture overview
- Technology stack details
- Data flow architecture
- Document processing workflow
- Component architecture
- API integration layer
- Security architecture
- Deployment architecture
-
WIREFRAMES.md - Comprehensive UI/UX wireframes and mockups
- All 6 role-specific dashboard wireframes
- Common component designs
- Responsive design specifications
- Accessibility features
- Design system guidelines
-
QUICK_START.md - 5-minute setup guide
-
IMPLEMENTATION.md - Detailed feature documentation
-
DEPLOYMENT.md - Production deployment guide
-
PROJECT_SUMMARY.md - Project statistics and achievements
✅ System Architecture Diagram
✅ Technology Stack Diagram
✅ RBAC Hierarchy Diagram
✅ Document Processing Workflow
✅ Article Upload Interface Wireframe
✅ Audit Verification Interface Wireframe
✅ Data Flow Diagrams
- Role-Based Access Control (RBAC): 6 distinct roles with granular permissions
- Document Management: Upload, OCR extraction, audit, and approval workflow
- Investment Tracking: Portfolio management for investors
- Analytics Dashboard: Comprehensive business insights for owners
- Clean UI: Stripe/Razorpay-inspired minimal design
- Full system access
- Analytics and reporting
- All client management
- Investment oversight
- View all clients
- Approve filings
- Investment summary access
- Team performance monitoring
- View assigned clients
- Approve verified documents
- Send back for corrections
- Upload documents
- Tag documents (purchase/sales/expense/import)
- Track upload status
- Verify OCR extracted data
- Edit extracted fields
- Flag mismatches
- Add audit notes
- View portfolio
- Add investments
- Update portfolio
- View analytics
- Upload broker statements
- Framework: Next.js 14 (App Router)
- Language: TypeScript
- Styling: TailwindCSS
- Icons: Heroicons
- State Management: React Context API
- Authentication: JWT-based (placeholder)
├── app/
│ ├── dashboard/
│ │ ├── owner/
│ │ ├── practice-head/
│ │ ├── senior-ca/
│ │ ├── article/
│ │ ├── audit/
│ │ └── investor/
│ ├── login/
│ ├── layout.tsx
│ ├── page.tsx
│ └── globals.css
├── components/
│ ├── DashboardLayout.tsx
│ ├── Navbar.tsx
│ ├── Sidebar.tsx
│ ├── RoleGuard.tsx
│ ├── UploadCard.tsx
│ ├── OCRFieldsPanel.tsx
│ └── StatusBadge.tsx
├── lib/
│ ├── auth-context.tsx
│ └── permissions.ts
└── types/
└── index.ts
- Node.js 20.9.0 or higher
- npm or yarn
# Install dependencies
npm install
# Run development server
npm run devOpen http://localhost:3000 in your browser.
The application is in demo mode. Use any email/password combination and select your role from the dropdown to access the corresponding dashboard.
- Article (Intern) uploads bill with tag (purchase/sales/expense/import)
- OCR System extracts fields (vendor, GST, amount, date, invoice no, items)
- Audit Team verifies extracted data, can edit fields or flag mismatches
- Senior CA reviews and approves or sends back for correction
- Approved documents appear in accounting, tax, analytics, and investor dashboards
- Banking-Grade: Clean, minimal, professional
- No Flashy UI: Focused on functionality and clarity
- Stripe/Razorpay Inspired: Neutral colors, strong hierarchy
- Accessibility: Clear typography, proper contrast
- Responsive: Works on all screen sizes
# Run development server
npm run dev
# Build for production
npm run build
# Start production server
npm start
# Lint code
npm run lintThe frontend is ready to connect to a FastAPI backend. Update the following:
- Replace mock data in dashboard pages with API calls
- Update
lib/auth-context.tsxwith actual authentication endpoint - Add API service layer in
lib/api.ts - Configure environment variables for API base URL
Proprietary - KiroTax Console