Web applications / University project · Server-side web development · 2025–2026

University Management System

An ASP.NET Core app for courses, enrollments and grades, with three roles.

University Management System — project preview
ASP.NET Core 8C#EF Core 8SQL ServerMVCBootstrap

The challenge

Model how a faculty runs its courses: students, professors and courses, who is enrolled in what and in which year, and how points turn into a final grade, with each role seeing only what it needs. Built for the Server-side Web Application Development course at FEIT.

My contribution

Built a full ASP.NET Core 8 MVC application with Entity Framework Core and SQL Server, using code-first migrations. It has three areas: an admin panel for managing students, professors, courses and users, a professor area for grading, and a student dashboard. I designed the data model, the controllers and Razor views, the CSV import, the file uploads and a light and dark theme.

How it works

Users sign in and are sent to their own area based on their role, stored in the session. Admins create courses with up to two professors, enroll students in bulk after filtering them by semester and education level, and close an enrollment by setting its finish date. Professors see only their own courses, choose the academic year, and enter exam, seminar, project and extra points plus the grade for each student. Finished enrollments are locked. Students see every course they are enrolled in with their points, grade and professors, and can add their project link and upload their seminar paper. Admins can import students, professors and courses from CSV, and the student import also creates their login accounts.

PROJECT FLOW / Academic workflow

From enrollment to a completed course

  1. Create courses and accounts

    Admins manage records and can import them from CSV.

  2. Enroll the students

    Filter by semester and education level for bulk enrollment.

  3. Work within each role

    Professors grade; students view results and submit coursework.

  4. Close the enrollment

    Setting a finish date locks the completed record.

Course project with session-based roles. Production authentication and authorization need further work.

Data model

Five related entities in EF Core: Student, Teacher, Course, Enrollment and User. A course links to a first and a second teacher. An enrollment connects a student to a course for a given year and semester and holds the exam, seminar, project and additional points, the grade, the finish date and links to the student's work. A user is tied to either a teacher or a student, which is how each login maps to its data.

What it covers

Outcome

A working system that covers the full course cycle, from enrollment to final grade, with each role seeing its own view of the same data.

Project scope

This is a course project focused on MVC structure, EF Core and the data model. Login uses a simple session-based role check, and passwords are not hashed. A production version would move to ASP.NET Core Identity with hashed passwords and role-based authorization on every controller.