AuditFlow is a full-stack web application that streamlines end-to-end audit processes for organizations — featuring real-time collaboration, barcode tracking, file management, role-based access control, and comprehensive reporting.
🚀 Get Started · ✨ Features · 🏗 Architecture · 📸 Screenshots · 🤝 Contributing
Below are live recordings of the platform in action.
| Screen | Preview |
|---|---|
| 🔐 Login | ▶ Watch Login Flow |
| 📊 Dashboard | ▶ Watch Dashboard |
| 📋 Audit Form | ▶ Watch Form Creation |
| 📝 Draft Management | ▶ Watch Drafts |
| ✅ Submitted Audits | ▶ Watch Submissions |
| 🛠 Admin Panel | ▶ Watch Admin Panel |
| ⚙️ Configuration | ▶ Watch Configuration |
| 🚪 Logout | ▶ Watch Logout |
- Create and manage audit forms with barcode tracking
- Support for multiple audit types with customizable categories
- Draft → Final status management workflow
- Case status tracking —
Yes/No/Incompleteclassifications
- Component-level error tracking with detailed categorization
- Error definition master data with codes and descriptions
- Final error category classification
- Support for components with and without errors
- Comprehensive remark system for operations and audit notes
- Role-based access control — Audit Users & Admins
- Google OAuth integration for seamless sign-in
- Profile management with picture uploads
- Permission-based audit portal access
- WebSocket-based real-time notifications (Django Channels)
- Live audit status updates across all connected users
- Multi-user collaboration support
- Presence tracking for active users
- AWS S3 integration for secure, scalable file storage
- File attachments for error cases and components
- Support for multiple file formats
- Automatic file cleanup on record updates
- Configurable audit sampling parameters
- Date range filtering for audit periods
- Client-based sampling with multiple client support
- Performer location tracking
- Research and insufficiency flagging
- Genuine case classification
- Audit type configuration
- Error category and definition management
- Check status, case status, and change status masters
- Final error category configuration
- Excel export capabilities for audit data
- Comprehensive audit logging with change tracking
- JSON-based data storage for flexible reporting
- Full audit trail with admin action tracking
┌──────────────────────────────────────────────────────────┐
│ CLIENT LAYER │
│ React.js · Material-UI · Zustand State │
│ Chart.js · FilePond · WebSocket │
└────────────────────────┬─────────────────────────────────┘
│ HTTP / WebSocket
┌────────────────────────▼─────────────────────────────────┐
│ GATEWAY LAYER │
│ JWT Authentication · Google OAuth │
│ Django Channels (WS) │
└────────────────────────┬─────────────────────────────────┘
│
┌────────────────────────▼─────────────────────────────────┐
│ SERVICE LAYER │
│ Django REST Framework · Celery Workers │
│ Django Channels · Advanced Filtering │
└──────────┬──────────────────────────┬────────────────────┘
│ │
┌──────────▼──────────┐ ┌──────────▼──────────────────┐
│ DATA LAYER │ │ STORAGE LAYER │
│ PostgreSQL · Redis │ │ AWS S3 (Files & Uploads) │
└─────────────────────┘ └─────────────────────────────-┘
| Layer | Technology | Purpose |
|---|---|---|
| Backend | Django 4.x + DRF | REST API, business logic |
| Frontend | React.js + Material-UI | Responsive, modern UI |
| Database | PostgreSQL | Primary data store |
| Cache / Queue | Redis + Celery | Sessions, async task processing |
| Real-time | Django Channels | WebSocket notifications |
| File Storage | AWS S3 | Secure cloud file storage |
| Auth | JWT + Google OAuth | Stateless authentication |
| Containerisation | Docker + Docker Compose | Dev & production deployment |
| State Management | Zustand | Lightweight frontend state |
| Charts | Chart.js | Analytics & data visualization |
| File Upload UI | FilePond | Drag-and-drop file management |
1. Configure Master Data
└─ Set up audit types, error categories, status masters (Admin Panel)
│
▼
2. Create Audit Form
└─ Generate form with barcode, sampling params, client & location info
│
▼
3. Record & Classify Errors
└─ Add component-level errors, attach files (S3), add remarks
└─ Collaborators see live updates via WebSocket
│
▼
4. Save as Draft or Submit
└─ Draft: save for later completion
└─ Submit: lock for final review with full change history
│
▼
5. Analyze & Export
└─ Review dashboards, filter by date/client, export to Excel
Make sure you have the following installed:
- Docker & Docker Compose
- Git
- AWS S3 bucket + credentials
- Google OAuth credentials (optional, for OAuth login)
git clone https://github.com/raghav26102000/AuditFlow.git
cd AuditFlowcp .env.example .envEdit .env and fill in your values:
# Django
SECRET_KEY=your-secret-key
DEBUG=False
ALLOWED_HOSTS=localhost,127.0.0.1
# Database
DB_NAME=auditflow
DB_USER=postgres
DB_PASSWORD=your-db-password
DB_HOST=db
DB_PORT=5432
# Redis
REDIS_URL=redis://redis:6379/0
# AWS S3
AWS_ACCESS_KEY_ID=your-access-key
AWS_SECRET_ACCESS_KEY=your-secret-key
AWS_STORAGE_BUCKET_NAME=your-bucket-name
AWS_S3_REGION_NAME=us-east-1
# Google OAuth
GOOGLE_CLIENT_ID=your-client-id
GOOGLE_CLIENT_SECRET=your-client-secretdocker compose up --build -ddocker compose exec backend python manage.py migrate
docker compose exec backend python manage.py createsuperuser| Service | URL |
|---|---|
| 🌐 Frontend | http://localhost:3000 |
| ⚙️ API | http://localhost:8000/api/ |
| 🔧 Admin Panel | http://localhost:8000/admin/ |
AuditFlow/
├── backend/ # Django backend
│ ├── audit/ # Core audit app
│ │ ├── models.py # Audit, Component, Error models
│ │ ├── views.py # REST API views
│ │ ├── serializers.py # DRF serializers
│ │ ├── consumers.py # WebSocket consumers
│ │ └── tasks.py # Celery async tasks
│ ├── users/ # User management app
│ ├── masters/ # Master data (types, categories)
│ └── config/ # Django settings & routing
│
├── frontend/ # React frontend
│ ├── src/
│ │ ├── components/ # Reusable UI components
│ │ ├── pages/ # Route-level pages
│ │ ├── store/ # Zustand state stores
│ │ └── api/ # Axios API clients
│ └── public/
│
├── docker-compose.yml # Multi-service orchestration
├── Dockerfile.backend # Backend container
├── Dockerfile.frontend # Frontend container
└── .env.example # Environment variable template
| Industry | Application |
|---|---|
| 🏭 Manufacturing | Quality audit management across production lines |
| ⚖️ Compliance | Regulated industry auditing with full traceability |
| 🔄 Service Organizations | Process audit tracking and documentation |
| 🌐 Multi-location Enterprises | Coordinated audits across distributed teams |
| 🤝 Audit Firms | Real-time team collaboration and reporting |
- ⚡ Streamlined Workflow — End-to-end audit process management in one platform
- 🔴 Real-time Collaboration — Live updates and notifications via WebSocket
- 📜 Comprehensive Tracking — Detailed audit trails and change logging
- 📦 Scalable Design — Built to handle enterprise-scale audit operations
- 🎨 Modern UI — Intuitive interface with advanced data visualization
Contributions are welcome! Here's how to get started:
# Fork the repository, then:
git clone https://github.com/your-username/AuditFlow.git
cd AuditFlow
# Create a feature branch
git checkout -b feature/your-feature-name
# Make your changes, then commit
git commit -m "feat: add your feature"
# Push and open a Pull Request
git push origin feature/your-feature-namePlease follow the existing code style and include tests for new features.
This project is licensed under the MIT License — see the LICENSE file for details.