https://www.youtube.com/watch?v=OL_E2jYk8KE
The School Management App is a comprehensive portal designed to streamline the management of school operations. Built with a robust technology stack, this application provides dedicated functionalities for both administrators and students, ensuring an efficient educational experience.
- Frontend: Next.js 14
- Backend: ASP.NET 8
- Database: PostgreSQL
- Chatbot Integration: Flowise using Gemini
- Authentication: JWT (JSON Web Tokens)
- Security: Azure Key Vault for database credentials
- Secure authentication for users with role-based access:
- Admin: Full access to manage school operations.
- Student: Access to personal profile and course management.
Admins have exclusive access to the following features:
- Manage Courses: Add, update, and delete courses.
- Manage Semesters: Create and manage academic semesters.
- View Student Data: Access and view detailed information on registered students.
- Send Reminders: Communicate important updates and reminders to students.
Students can perform the following actions:
- View Profile: Access their personal profile and academic information.
- Manage Courses: Add or remove courses as per their academic requirements.
To ensure the security of sensitive information:
- Database credentials are stored securely in Azure Key Vault.
- User authentication is managed via JWT tokens to maintain session integrity and security.
- .NET SDK 8
- Node.js (version 14 or above)
- PostgreSQL installed and running
- Azure Key Vault for credential management
git clone https://github.com/zainababid94/Cchool-Management-App
cd School-Management-App
### Backend Setup
1. Navigate to the backend directory:
```bash
cd backend
2. Restore the dependencies
dotnet restore
3. Set up the database and run migrations:
dotnet ef database update
4. Start the backend server:
dotnet run
### Frontend Setup
1. Navigate to the frontend directory:
cd frontend
2. Install the dependencies:
npm install
3. Start the frontend application:
npm run dev
### License
This project is licensed under the MIT License - see the LICENSE file for details.