In this project, we design and implement a database schema for a gamified and personalized educational platform. The goal is to support a dynamic and adaptable learning environment that personalizes content delivery and interactions based on learners’ unique characteristics, such as personality, emotional state, physical and mental health, and background. The platform also aims to enhance engagement through gamification elements like badges, quests, and leaderboards. The platform’s core focus is to provide a scientifically grounded and pedagogically sound learning experience, aligning with the principles of adaptive learning and character computing. By combining learning theory with data-driven personalization, the database will act as the backbone, managing learners’ data, course content, learning interactions, and gamification features, while enabling fine-grained analytics and data tracking.
To run this project, you need to have ASP.NET 9 installed on your local machine. You can download it from the official Microsoft website and follow the installation instructions.
- Install SQL Server on your local machine.
- Create a new database named
CourseStation
.
- Update the
appsettings.json
file in theCourse station/Course station/
directory with your local database server details:{ "ConnectionStrings": { "DefaultConnection": "Server=YOUR_SERVER_NAME;Database=CourseStation;Trusted_Connection=True;TrustServerCertificate=True;MultipleActiveResultSets=true" }, "Logging": { "LogLevel": { "Default": "Information", "Microsoft.AspNetCore": "Warning" } }, "AllowedHosts": "*" }
- Update the
ApplicationDbContext.cs
file in theCourse station/Course station/Models/
directory to use the connection string from the configuration file:protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) => optionsBuilder.UseSqlServer(Configuration.GetConnectionString("DefaultConnection"));
Run the following commands to install the required dependencies:
dotnet add package System.Net.Http
dotnet add package Newtonsoft.Json
dotnet add package Microsoft.Extensions.DependencyInjection
dotnet add package Microsoft.EntityFrameworkCore.Tools
dotnet add package Microsoft.EntityFrameworkCore.SqlServer
dotnet add package Microsoft.AspNetCore.Session
dotnet add package Microsoft.AspNetCore.Identity.EntityFrameworkCore
dotnet restore
dotnet build
dotnet run