A comprehensive web-based Student Management System built with ASP.NET Core 8.0, featuring role-based access control for Administrators, Teachers, and Students.
Try it now! You can test the application with the live demo deployed on Render:
Demo URL: https://student-management-system-bons.onrender.com
- Email:
ivan414@gmail.com - Password:
Password1! - Access: View grades, remarks, schedule, academic dashboard
- Email:
stan12@gmail.com - Password:
Password123 - Access: Grade management, student remarks, assigned classes
- Email:
admin@admin.com - Password:
Password123 - Access: Full system management, user creation, course management
Note: This is a demo environment. Data may be reset periodically. Please do not enter any sensitive or personal information.
- Admin Panel: Create new users, manage courses and classes
- Teacher Dashboard: Add grades and remarks for students
- Student Portal: View academic performance and schedules
- Role-based Access: Notice different features available to each role
- User Management: Create, edit, and manage students, teachers, and administrators
- Course Management: Create and manage courses with teacher assignments
- Class Management: Organize students into classes with course assignments
- Schedule Management: Create and manage class schedules
- Role Management: Assign and manage user roles
- Remarks & Grades: Oversee student remarks and academic performance
- Student Overview: View assigned students and their details
- Grade Management: Add, edit, and delete student grades
- Remarks System: Add and manage student remarks by course
- Class Management: Manage assigned classes and courses
- Academic Dashboard: View grades, remarks, and academic performance
- Schedule Access: View class schedules and course information
- Performance Tracking: Monitor academic progress and statistics
- Framework: ASP.NET Core 8.0 MVC
- Database: PostgreSQL (Production) / SQL Server (Development)
- ORM: Entity Framework Core 8.0
- Authentication: ASP.NET Core Identity with Google Authentication
- Frontend: Bootstrap 4.5, jQuery
- Email: MailKit for SMTP notifications
- Deployment: Docker support with Render.com configuration
- .NET 8.0 SDK
- PostgreSQL (Production) or SQL Server (Development)
- Visual Studio 2022 or VS Code
- Docker (optional, for containerized deployment)
git clone https://github.com/VelkoTgr6/StudentManagementSystem.git
cd StudentManagementSystemThe application uses a flexible database configuration system that automatically detects the environment and configures the appropriate database connection.
For local development, add a connection string to appsettings.Development.json:
{
"ConnectionStrings": {
"DefaultConnection": "Server=(localdb)\\mssqllocaldb;Database=StudentManagementDb;Trusted_Connection=true;MultipleActiveResultSets=true"
}
}For production deployment, set the DATABASE_URL environment variable:
export DATABASE_URL="postgresql://username:password@hostname:port/database"The system will automatically parse the DATABASE_URL and construct the appropriate PostgreSQL connection string with SSL requirements.
dotnet user-secrets init
dotnet user-secrets set "EmailSettings:SmtpServer" "your-smtp-server"
dotnet user-secrets set "EmailSettings:Port" "587"
dotnet user-secrets set "EmailSettings:Username" "your-email@example.com"
dotnet user-secrets set "EmailSettings:Password" "your-password"dotnet restoredotnet ef database updatedotnet run --project StudentManagementSystemThe application will be available at https://localhost:7071