Skip to content

Student Exam Generator and Analyzer (S.E.S.) is an open-source project that helps schools generate, manage, and analyze exams efficiently. Each school runs its own secure, localized instance to ensure data privacy.

License

Notifications You must be signed in to change notification settings

FurkanHuman/Student_Exam_Generator_And_Analyzer

Student Exam System & Analyzer (S.E.S.)

⚠️ Notice

This project will undergo a significant architectural change in the near future.
Please stay tuned for further details and updates.

Short Name: S.E.S. Status: 🚧 Actively being developed β€” New features on the way!


πŸ“Œ What is S.E.S.?

S.E.S. (Student Exam System & Analyzer) is a powerful, open-source platform built to streamline the exam process for educators. It makes exam preparation, grading, and result analysis faster and easier β€” with built-in tools that help reduce cheating and improve learning outcomes.

Whether you’re an individual teacher, a school, or an institution, S.E.S. can adapt to your needs β€” and can even be deployed on-premises or in private clouds.


🌟 Key Features

  • Auto Question Generation β€” Enter topics, get multiple-choice, true/false, and short-answer questions.
  • Smart Grading & Analytics β€” Automatically grade and visualize student performance.
  • Unique Exams Per Student β€” Reduces cheating by generating different versions of each test.
  • Exam Management Dashboard β€” Centralized control for question banks and scheduling.
  • Flexible Deployment β€” Works on local servers, private clouds, or via Docker.

🧰 Tech Stack

  • Backend: C# / .NET 8 (ASP.NET Core MVC)
  • Database: PostgreSQL
  • ORM: Entity Framework Core
  • Containerization: Docker (optional)

πŸ’» Demo

A small live demo of S.E.S. is available on the following subdomains:

This demo allows you to explore the system with sample data. Please note that it is for demonstration purposes only.


πŸš€ How to Get Started

  1. Clone the Repository

    git clone https://github.com/FurkanHuman/Student_Exam_Generator_And_Analyzer.git
    cd Student_Exam_Generator_And_Analyzer
  2. Configure the Database

    Update appsettings.json with your database connection info.

  3. Build and Run the App

    First, navigate to the Scripts folder.

       cd Scripts

    For Linux-based systems

       # Docker mode
       ./Build.sh docker SES_App_Name amd64 ./cert.pfx Cert_Password
       # Run
       ./Run.sh docker SES_App_Name amd64
    
       # Standalone mode  
       ./Build.sh standalone SES_App_Name Release      
       # Run
       ./Run.sh standalone SES_App_Name

    For Windows systems

       # Docker mode
       .\Build.ps1 docker SES_App_Name amd64 .\cert.pfx Cert_Password      
       # Run
       .\Run.ps1 docker SES_App_Name amd64
    
       # Standalone mode
       .\Build.ps1 standalone SES_App_Name Release      
       # Run
       .\Run.ps1 standalone SES_App_Name

πŸ— Architecture Overview

The S.E.S. solution follows a multi-layered architecture:

  • BlazorWebUI – UI / main entry point
  • BlazorWebUI.Client – Client-side logic
  • Application – Application services and logic
  • Domain – Database Entities
  • Infrastructure – Data access & external services
  • Persistence – Database / storage

πŸš€ Running the Application

  1. Open the solution in your IDE.

  2. Set BlazorWebUI as the Startup Project.

  3. Restore dependencies:

    dotnet restore

    Build the solution:

    dotnet build

    Run the application:

    dotnet run --project Src/SES/BlazorWebUI/BlazorWebUI.csproj
  4. Open your browser and navigate to https://localhost:5001 (or the port specified in your configuration).


πŸŽ“ Why Educators Love It

  • Save time with automatic generation and grading
  • Identify learning gaps with data-driven insights
  • Reduce cheating with unique exams for each student
  • Manage everything from one dashboard

πŸ”’ Privacy & Security Notice

For legal reasons, certain links, adapters, or external service providers are not included in this repository.
Users are responsible for configuring and managing any required integrations themselves.


πŸ”„ Contribution Guidelines


πŸ“ Feature Requests

If you’d like to see a new feature added, please open a feature request using our
Feature Request Template.

We appreciate your feedback and contributions!


🌐 Community & Support

Join the S.E.S. community or stay updated through:

Feel free to ask questions, share feedback, or contribute to the project.


πŸ’– Support the Project

Like what you see? Help keep the project growing by buying the author a coffee:

πŸ‘‰ Buy Me a Coffee


πŸ“š References

About

Student Exam Generator and Analyzer (S.E.S.) is an open-source project that helps schools generate, manage, and analyze exams efficiently. Each school runs its own secure, localized instance to ensure data privacy.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •