The Anonymous Grievance System is a web application designed to facilitate confidential communication between students and faculty for grievance resolution. The system ensures that only verified college students can register while maintaining strict anonymity. It implements content moderation to maintain a professional environment and features a comprehensive architecture including frontend, backend, and database components. This was build as our project idea for Mini-project.
- Secure anonymous authentication for students and faculty
- JWT-based authorization for protected routes (create, read, update complaints)
- College email verification through SMTP-based OTP system
- AI-powered NSFW content detection for maintaining professional standards
- Robust backend with comprehensive validation and privacy controls
- Cloud-hosted MongoDB Atlas database for reliable data management
- React.js
- HTML5
- CSS3
- JavaScript
- Node.js
- Express.js
- RESTful API architecture
- MongoDB (NoSQL)
- MongoDB Atlas (Cloud hosting)
- JWT (JSON Web Tokens)
- SMTP email verification
- AI content moderation
- Node.js (Latest LTS version recommended)
- npm (Node Package Manager)
- Git
- Clone the repository
git clone https://github.com/Nikhil-NP/Anonymous-Grievance-System
cd Anonymous-Grievance-System
- Install dependencies
# Root directory
npm install
# Client directory
cd client
npm install
# Server directory
cd ../server
npm install
- Environment Configuration
Create a
.env
file in the server directory with the following variables:
GEMINI=your-gemini-api-key
CONNECTION_STRING=your-mongodb-atlas-uri
mygmail=your-gmail-for-smtp
PORT=5000
appPasswordGoogle=your-google-app-password
ACCESS_TOKEN_SECRET=your-jwt-secret{Any secret key that is used for authorisation purposes eg.., 1234}
- Running the Application
# Development mode (from root directory)
npm run start
# Alternatively, run server and client separately:
# Server (in server directory)
npm run dev
# Client (in client directory)
npm start
- Administrator dashboard for grievance oversight
- Advanced appeal system for unresolved complaints
- Multi-format evidence upload support (images, videos, documents)
- Production deployment and hosting
- Performance optimization and scaling
Contributions are welcome! To contribute:
- Fork the repository
- Create a feature branch
- Commit your changes
- Push to your branch
- Create a Pull Request
- Lead Developer: Nikhil: https://github.com/Nikhil-NP
- Contributors:
- Naveen L D : https://github.com/naveen-dinesh
- Shivanaga: https://github.com/Shivanaga7sheelavantar
- Veeresh: [GitHub Profile]
- Special thanks to the MongoDB Atlas team for their excellent database service
- Node.js ,React.js,Express communities for their extensive documentation
- Google Cloud Platform for their API services
- All contributors who helped test and improve this system