Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

📝 Document JSON Schema #104

Closed
14 tasks
keithrfung opened this issue Sep 2, 2021 · 8 comments
Closed
14 tasks

📝 Document JSON Schema #104

keithrfung opened this issue Sep 2, 2021 · 8 comments
Assignees
Labels
documentation Improvements or additions to documentation enhancement New feature or request good first issue Good for newcomers help wanted Extra attention is needed

Comments

@keithrfung
Copy link
Collaborator

keithrfung commented Sep 2, 2021

Feature Request

Create a JSON schema for each of the models in the electionguard-python repository. Use this mkdocs plugin to display the schema in documentation for easy consumption.

Tasks

  • Create folder schema of JSON Schema

    • Election
      • Manifest
      • CiphertextElectionContext
      • ElectionConstants
      • EncryptionDevice
    • Ceremony
      • GuardianRecord
      • LagrangeCoefficientsRecord
    • Ballot
      • SubmittedBallot
      • CiphertextBallot
      • PlaintextBallot
    • Tally
      • PlaintextTally
      • CiphertextTally
      • PublishedCiphertextTally (Until adjustments made)
  • Document

    • Under a Data Format section, add brief description and then link to pages for each of the previous schemas as individual pages with a brief description and using the mkdocs plugin to display schema file. It should target https://www.electionguard.vote/spec/Data_Format/
@keithrfung keithrfung added enhancement New feature or request help wanted Extra attention is needed good first issue Good for newcomers documentation Improvements or additions to documentation hacktoberfest Issues for the Hacktoberfest labels Sep 2, 2021
@keithrfung
Copy link
Collaborator Author

As a sidenote, these can be broken up into individual pull requests instead of tackling this as a full issue.

@manoloesparta
Copy link

Can you assign me this? I would like to help

@keithrfung
Copy link
Collaborator Author

@manoloesparta Sure. It's a pretty big issue. Try and take a chunk at a time.

@manoloesparta manoloesparta removed their assignment Oct 4, 2021
@melkyy
Copy link

melkyy commented Oct 4, 2021

Ok I'm figure out how accomplish this, where I'd create the schema folder? inside of docs? or in the root of the project?

@keithrfung
Copy link
Collaborator Author

@melkyy We would absolutely love some help on this. Remember you don't have to do ALL of the schemas just any and getting started would be appreciated.

I would make a schema folder within the docs folder.

- docs / 
--- schema / 
------ example.schema.json

Each schema should be linked to from the Data Format page.
https://www.electionguard.vote/spec/Data_Format/

An example would be:

## Ballot

-  [SubmittedBallot](link_to_schema)
    A ballot that has been cast or spoiled/challenged. 

@melkyy
Copy link

melkyy commented Oct 7, 2021

@keithrfung
sorry for the late response, all within electionguard-python repository rigth? I've created example.schema.json in docs/schema

Screen Shot 2021-10-07 at 2 08 49 p m

am I doing well?

@keithrfung
Copy link
Collaborator Author

keithrfung commented Oct 8, 2021

@melkyy Yes. I believe this has to be within the docs folder to use the mkdocs plugin to view the schema. This looks great!

Don't forget to add this, so you can view the schemas in the site
https://github.com/galamdring/mkdocs-json-schema-plugin

@keithrfung
Copy link
Collaborator Author

@melkyy Any more help needed?

@keithrfung keithrfung removed the hacktoberfest Issues for the Hacktoberfest label Nov 1, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation enhancement New feature or request good first issue Good for newcomers help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

3 participants