A modern school management system built with React, Firebase, and Tailwind CSS. The system provides a platform for teachers and students to manage classes, assignments, and track progress.
- 🎨 Modern UI with Tailwind CSS
- 🔒 Authentication with Firebase (Email/Password and Google Sign-in)
- 👥 Role-based access (Teachers and Students)
- 📱 Responsive design
- ✨ Smooth animations with Framer Motion
- 🔄 State management with Zustand
- 💾 Offline data persistence with Firestore
- 📊 Analytics integration
- 🗄️ Real-time database support
- 📁 File storage capabilities
- React
- Firebase
- Authentication
- Firestore (with offline persistence)
- Realtime Database
- Storage
- Analytics
- Tailwind CSS
- Framer Motion
- React Icons
- Zustand
- React Router DOM
- Node.js (v14 or higher)
- npm or yarn
- Firebase account
- Clone the repository:
git clone <repository-url>
cd school-management-system- Install dependencies:
npm install
# or
yarn install-
The Firebase configuration is already set up in
src/firebase/config.js. If you want to use your own Firebase project, replace the configuration object with your own credentials. -
Start the development server:
npm start
# or
yarn startThe application will be available at http://localhost:3000.
src/
├── components/
│ ├── Auth/
│ │ ├── Login.js
│ │ ├── Register.js
│ │ └── ResetPassword.js
│ └── LandingPage/
│ ├── Hero.js
│ ├── Features.js
│ └── Stats.js
├── firebase/
│ └── config.js (Firebase configuration and service initialization)
├── store/
│ └── authStore.js
├── App.js
├── index.js
└── index.css
The application uses several Firebase services:
- Authentication: Email/Password and Google Sign-in
- Firestore: Main database with offline persistence enabled
- Realtime Database: For real-time features
- Storage: For file uploads and management
- Analytics: For tracking user behavior and app usage
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License.