Code Monkey home page Code Monkey logo

cifra's Introduction

     _______         ________   
    /  _____\   ___ /\   ____\ _______  
   /\  \    /  /\__\\ \  \___ /\   ___\  ______ 
  /  \  \__/__ \/\  \\ \   __\\ \  \__/ /  __  \
  \   \________\\ \  \\ \  \_/ \ \  \  /\  \L\  \
   \  /        / \ \__\\ \__\   \ \ _\ \ \__/.\__\
    \/________/   \/__/ \/__/    \/__/  \/__/\/__/ 

Cifra

An application to create a template for filling in exam points and calculating the test score. Cifra can provide a timesaving solution for repetitively creating spreadsheets for filling in test scores. By filling in a just few parameters, a spreadsheet can be automatically generated and used directly in your favorite spreadsheet editor.

Cifra is currently a Web API with a Blazor front-end. The front-end is still in development and is not yet fully functional.

Build

With Docker Compose the build can be easily started

docker-compose build --build-arg NUGET_AUTH_USERNAME=token --build-arg NUGET_AUTH_TOKEN=TOKEN

Start

docker-compose up

Tutorial

Cifra needs some data in order to get started. There is data that has to be filled in only once (Classes and Tests), and data that has to be filled in for each spreadsheet.

Creating a class of students

Students of a class will be represented on the spreadsheet. There are two ways of creating classes in Cifra. Creating them manual or importing a CSV export.

Manual

  1. Go to the class overview page
  2. Fill in a new row and fill in the first and last name, optionally a infix can also be provided of the student
  3. Add the new row
  4. Save the class

Using a CSV export

  1. Create a CSV files of the students in the following format:
FirstName; LastName
John; Doe
  1. Go to the class overview page
  2. Select the file from step 1 and click on import.
  3. Save the class

Creating a test

The layout of the test will be represented on the spreadsheet.

  1. Go to the create test form
  2. Fill in the name of the test. This will be used later to search for the test when creating a spreadsheet.
  3. Fill in how many versions are the of the test. Sometimes there are multiple versions of the same test when the test is being taken in the same classroom for example.
  4. Fill in the minimum grade. This is the grade that will remain if no points where scored.
  5. Fill in the standardization factor. This is the factor that is needed to calculate the grade
  6. Save the test
  7. Fill in how many assignments are present on the test. Take note of the following hierarchy:
- Assignment 1
	- Question 1
- Assignment 2
	- Question 2
	- Question 3
etc...

Assignments contain one or multiple questions. First fill in how many assignments are there according to this hierarchy.

  1. Fill in the number of questions per assignment.

Creating a spreadsheet

If at least one class and test has been defined a spreadsheet can be created.

  1. Go to the create spreadsheet form
  2. Choose the predefined class to respresent in the spreadsheet.
  3. Choose the predefined test to represent in the spreadsheet.
  4. Fill in the name of the spreadsheet. This will also be the file name.
  5. Create the spreadsheet
  6. The spreadsheet will be downloaded through your browser

Database

Generate migration

dotnet ef migrations add "InitialCreate" --project src/Cifra.Database/Cifra.Database.csproj --output-dir Migrations --context Context --startup-project src/Cifra.Api/Cifra.Api.csproj

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.