ScolariCore 1.0.0

dotnet add package ScolariCore --version 1.0.0
                    
NuGet\Install-Package ScolariCore -Version 1.0.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="ScolariCore" Version="1.0.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="ScolariCore" Version="1.0.0" />
                    
Directory.Packages.props
<PackageReference Include="ScolariCore" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add ScolariCore --version 1.0.0
                    
#r "nuget: ScolariCore, 1.0.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package ScolariCore@1.0.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=ScolariCore&version=1.0.0
                    
Install as a Cake Addin
#tool nuget:?package=ScolariCore&version=1.0.0
                    
Install as a Cake Tool

ScolariCore

ScolariCore is a .NET library designed to generate exam questions using the Gemini LLM. It provides a simple and intuitive API to request questions based on various parameters like subject, topic, education system, and grade level.

Installation

(Instructions on how to install the NuGet package will go here once published.)

dotnet add package ScolariCore

Usage

1. Initialize the ExamQuestionsGenerator

To start generating questions, you need to instantiate the ExamQuestionsGenerator with your Gemini API key and the desired model.

using ScholariCore.ExamQuestions;

// Replace with your actual Gemini API key and desired model
string apiKey = "YOUR_GEMINI_API_KEY";
string model = "gemini-pro"; // Or another suitable Gemini model

var generator = new ExamQuestionsGenerator(apiKey, model);

2. Create an ExamQuestionRequest

Define the parameters for your desired exam questions using the ExamQuestionRequest object.

var request = new ExamQuestionRequest
{
    Subject = "Mathematics",
    Topic = "Algebra",
    EducationSystem = "US",
    Level = "High School",
    NumberOfQuestions = 3
};

3. Generate Questions

Call the GenerateQuestionsAsync method with your ExamQuestionRequest to get a list of ExamQuestion objects.

List<ExamQuestion> questions = await generator.GenerateQuestionsAsync(request);

foreach (var question in questions)
{
    Console.WriteLine($"Question: {question.Question}");
    Console.WriteLine("Answers:");
    foreach (var answer in question.Answers)
    {
        Console.WriteLine($"- {answer}");
    }
    Console.WriteLine($"Correct Answer: {question.CorrectAnswer}");
    Console.WriteLine($"Explanation: {question.Explanation}");
    Console.WriteLine($"Brief Explanation: {question.BriefExplanation}");
    Console.WriteLine("---");
}

API Reference

ExamQuestionsGenerator Class

The main class for generating exam questions.

Constructor
  • ExamQuestionsGenerator(string apiKey, string model)
    • apiKey: Your Gemini API key.
    • model: The Gemini model to use for question generation (e.g., "gemini-pro").
Methods
  • Task<List<ExamQuestion>> GenerateQuestionsAsync(ExamQuestionRequest examQuestionRequest)
    • Generates a list of exam questions based on the provided examQuestionRequest.
    • Returns a Task that resolves to a List<ExamQuestion>.

ExamQuestionRequest Class

Represents a request for exam questions.

Properties
  • string? Topic: The specific topic for the questions (optional).
  • string Subject: The subject of the questions (e.g., "Mathematics", "History").
  • string EducationSystem: The education system context (e.g., "US", "UK").
  • string Level: The grade or difficulty level (e.g., "High School", "University").
  • int NumberOfQuestions: The desired number of questions to generate.

ExamQuestion Class

Represents a generated exam question.

Properties
  • string Question: The text of the question.
  • List<string> Answers: A list of possible answers for multiple-choice questions.
  • string CorrectAnswer: The correct answer to the question.
  • string Explanation: A detailed explanation for the correct answer.
  • string BriefExplanation: A concise explanation for the correct answer.
Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.0.0 674 12/2/2025