Compare commits

...

2 Commits

Author SHA1 Message Date
Aditya Thakral 2cbba93d9d Add json schema 4 months ago
Aditya Thakral c14455fe14 Unignore schema 4 months ago
  1. 5
      .gitignore
  2. 0
      public/api/.keep
  3. 25
      public/api/schema/members.json
  4. 8
      scripts/api/members.ts

5
.gitignore vendored

@ -30,5 +30,6 @@ yarn-error.log*
# Images should be optimized
/public/images
# APIs should be automatically generated
/public/api
# APIs should be automatically generated, schema should be checked in
/public/api/*
!/public/api/schema

@ -0,0 +1,25 @@
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "Member list",
"description": "List of all members of the Computer Science Club of the University of Waterloo",
"type": "object",
"properties": {
"members": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"id": {
"type": "string"
},
"program": {
"type": "string"
}
}
}
}
}
}

@ -7,7 +7,13 @@ async function createMembersApi() {
const { term, year } = getCurrentTermYear();
const members = await getMembers(year, term);
await writeFile("public/api/members.json", JSON.stringify(members));
const result = {
$schema: "https://json-schema.org/draft/2020-12/schema",
$id: "schema/members.json",
members,
};
await writeFile("public/api/members.json", JSON.stringify(result));
}
void createMembersApi();

Loading…
Cancel
Save