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.