A powerful tool to streamline Fire No Objection Certificate (NOC) issuance, reducing processing time by 25% β±οΈ and promoting transparency! Built with React for a sleek frontend π and Spring Boot for a robust backend π», this project aims to modernize fire safety compliance.
This application digitizes the Fire NOC process, ensuring efficiency and accountability. It provides tailored experiences for different users and generates insightful analytics for system optimization.
- Role-Based Views: Custom dashboards for 3 roles (admins, inspectors, applicants) π₯.
- Inspection Photo Upload: Mandatory onsite photos πΈ to prevent corruption π«.
- Time Efficiency: 25% faster processing β‘.
- Efficiency Analysis: Analytics for NOC officers to monitor fire department operations using Gemini and Streamlit π.
- Frontend: React π
- Backend: Spring Boot π»
- Analytics: Gemini & Streamlit π
-
Clone the repository: git clone https://github.com/Devansh-sys/fireSathi_frontend.git
-
Set up the frontend: cd fireSathi_frontend && npm install && npm run dev
-
Configure Gemini and Streamlit for analytics (refer to respective docs).
- Access the app via
localhost:3000(frontend). - Log in based on your role (admin/inspector/applicant).
- Inspectors: Upload onsite photos during inspections.
- NOC Officers: View operational efficiency via analytics dashboard.
We welcome contributions! Please follow these steps:
- Fork the repo.
- Create a branch (
git checkout -b feature-name). - Commit changes (
git commit -m 'Add feature'). - Push to the branch (
git push origin feature-name). - Open a Pull Request.
This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.
Currently, two official plugins are available:
- @vitejs/plugin-react uses Babel for Fast Refresh
- @vitejs/plugin-react-swc uses SWC for Fast Refresh
If you are developing a production application, we recommend using TypeScript and enable type-aware lint rules. Check out the TS template to integrate TypeScript and typescript-eslint in your project.