A comprehensive platform for IIITM students offering academic resources, marketplace, community features, collaboration tools, and more.
IIITM Insight is a full-stack web application designed to enhance the academic and campus life experience for IIITM students. The platform provides a centralized hub for sharing notes, buying/selling items, connecting with peers, and accessing essential student tools.
- Notes Library - Upload, download, and share class notes
- PYQ Bank - Access previous year question papers
- Books Repository - Digital library of textbooks and references
- Syllabus - Current syllabi for all courses
- Buy, sell, or rent items within campus
- Categories: Books, Electronics, Furniture, Stationery
- Secure transaction system with reviews
- Chat with sellers directly
- Activity Feed - Campus-wide social feed
- Blogs - Write and share technical/experience blogs
- Events - Campus events calendar
- Lost & Found - Report and claim lost items
- Professor Reviews - Anonymous professor ratings
- Course Reviews - Student feedback on courses
- Detailed ratings on teaching quality, accessibility, grading
- Study Groups - Form and join study groups
- Project Partners - Find teammates for projects
- Skill Exchange - Teach and learn from peers
- Real-time chat within groups
- CGPA Calculator - Track and calculate grades
- Attendance Tracker - Monitor attendance with alerts
- Timetable Manager - Organize class schedules
- Internships, workshops, competitions
- Scholarship information
- Career opportunities
- Full-text search across all content
- Advanced filtering and sorting
- Trending content suggestions
- Real-time notifications
- Email digests
- Customizable preferences
- User management
- Content moderation
- Analytics dashboard
- System configuration
Frontend:
- React 18 with Hooks
- Tailwind CSS for styling
- React Router for navigation
- Axios for API calls
- Socket.io-client for real-time features
- Redux/Zustand for state management
Backend:
- Node.js with Express.js
- PostgreSQL for relational data
- MongoDB for activity feeds and logs
- Redis for caching and sessions
- Elasticsearch for search
- Bull Queue for background jobs
- Socket.io for real-time communication
Storage:
- AWS S3 / GCP Cloud Storage for files
- Local storage for development
Deployment:
- Docker & Docker Compose
- Nginx reverse proxy
- AWS/GCP cloud infrastructure
iiitm-insight/
βββ client/ # React frontend
β βββ src/
β β βββ components/ # Reusable components
β β βββ pages/ # Page components
β β βββ services/ # API services
β β βββ hooks/ # Custom hooks
β β βββ context/ # React context
β β βββ utils/ # Utilities
β β βββ App.jsx
β βββ package.json
β
βββ server/ # Node.js backend
β βββ src/
β β βββ config/ # Configuration
β β βββ models/ # Database models
β β βββ controllers/ # Request handlers
β β βββ services/ # Business logic
β β βββ middleware/ # Express middleware
β β βββ routes/ # API routes
β β βββ utils/ # Utilities
β β βββ server.js
β βββ package.json
β
βββ docker/ # Docker configuration
β βββ docker-compose.yml
β βββ Dockerfile.client
β βββ Dockerfile.server
β
βββ docs/ # Documentation
β βββ API.md
β βββ ARCHITECTURE.md
β βββ DEPLOYMENT.md
β
βββ README.md
- Node.js >= 18.0.0
- PostgreSQL >= 15
- MongoDB >= 6
- Redis >= 7
- Docker (optional, for containerized setup)
- Clone the repository:
git clone https://github.com/your-org/iiitm-insight.git
cd iiitm-insight- Setup Backend:
cd server
npm install
cp .env.example .env
# Edit .env with your configuration
npm run dev- Setup Frontend:
cd client
npm install
cp .env.example .env
# Edit .env with your configuration
npm startcd iiitm-insight
docker-compose up -d- Frontend: http://localhost:3000
- Backend API: http://localhost:5000
- API Docs: http://localhost:5000/api/docs
Email: [email protected]
Password: Admin@123 (Change after first login!)
Backend:
cd server
npm testFrontend:
cd client
npm test- ESLint for linting
- Prettier for formatting
- Conventional commits
- Create feature branch from
develop - Make changes and commit
- Push and create pull request
- Code review and merge
See Deployment Guide for detailed instructions.
Quick Deploy:
docker-compose -f docker-compose.prod.yml up -d- JWT-based authentication
- Role-based access control
- Rate limiting
- Input validation and sanitization
- SQL injection prevention
- XSS protection
- HTTPS enforcement in production
- Redis caching
- Database indexing
- Image optimization
- Code splitting
- Lazy loading
- CDN for static assets
We welcome contributions! Please see our Contributing Guide.
- Fork the repository
- Create your feature branch
- Commit your changes
- Push to the branch
- Open a pull request
This project is licensed under the MIT License - see the LICENSE file for details.
IIITM Insight Development Team
- Project Lead: [Name]
- Backend Lead: [Name]
- Frontend Lead: [Name]
- UI/UX Designer: [Name]
- Email: [email protected]
- Website: https://iiitm-insight.com
- GitHub: https://github.com/your-org/iiitm-insight
- IIITM Faculty and Administration
- All contributors and testers
- Open source community
- Mobile app (React Native)
- AI-powered content recommendations
- Video lectures integration
- Discussion forums
- Alumni network
- Job portal integration
- Advanced analytics dashboard
- Multi-language support
Made with β€οΈ by IIITM Students, for IIITM Students