OneRosterSampleDataGenerator
No description available
Install / Use
/learn @bergerb/OneRosterSampleDataGeneratorREADME
OneRoster Sample Data Generator
This class library can be utilized to generate randomly generated data or in-memory construct(s) of OneRoster roster files for educational applications.
Description
The objects generated in this class can be used for a number of things. They can be outputted to to Csv and OneRoster file types. They are generated and well-formed OneRoster files that match the 1.1 spec of OneRoster. The in-memory construct can also be used to import into various systems, test-systems, and other EdTech applications.
Creates
- Academic Sessions
- Classes
- Courses
- Demographics
- Enrollments
- Grades
- Manifest
- Org
- Staff
- Students
School Year generated runs from 8/16/{currentYear} to 8/15/{nextSchoolYear}
Semesters (Terms)
- Full Year
- MP1
- MP2
- MP3
- MP4
- Semester 1
- Semester 2
- Summer Semester
Getting Started
Dependencies
- NET 7
- Bogus 34.0.1
- CsvHelper 30.0.1
Installing
Copy generated dll into your bin
Executing program
Simpliest Execution
var oneRoster = new OneRoster();
Generating Files
OneRoster oneRoster = new();
oneRoster.OutputCSVFiles();
oneRoster.OutputOneRosterZipFile();
This generates the needed OneRoster files to current application (AppDomain.CurrentDomain.BaseDirectory) path
OneRosterfolder. Then compiles the files into aOneRoster.zipfile
OneRoster oneRoster = new(new() { schoolCount = 3 });
The ability to set the number of generated school. The default is
22.
Configurable Settings
The argument for the constructor is a configurable record with optional fields that default to the following:
| Setting | Default | | --- | --- | | IncrementalDaysToCreate | null | | SchoolCount | 22 | | StaffIdStart | 1 | | StudentIdStart | 910000000 | | StudentsPerGrade | 200 | | MaxTeacherClassCount | 8 |
More documentation to come.
Help
Please add an issue to this project
https://github.com/bergerb/OneRosterSampleDataGenerator/issues
Authors
Brent Berger hachyderm.io/@bergerb
Version History
- TBD
- Current Release
License
This project is licensed under the Unlicense license License
