Commit 269d1229 authored by Goutte's avatar Goutte

Add a draft of the specs of the files paths.

parent 00d556a9
......@@ -3,6 +3,29 @@
> Contributions welcome!
## Files Paths
```
<topic>[/<topic>]/chapter<NN>-<type>.<language>.<format>
or
<topic>[/<topic>]/<NN>-<title>-<type>.<language>.<format>
or
???
```
- `topic`: lowercase alphanumeric topic name (in english, sorry)
- `NN`: level of the course, an integer with always two digits
- `type`: one of :
- `textbook`
- `cheatsheet` (?)
- `annex`
- `language`: 2 letter lowercase language code
- `format`: `md` for markdown
## Courses Model
Each Course MUST have:
......@@ -11,7 +34,7 @@ Each Course MUST have:
- one Title
- one Content
- one Topic
- one Language `ISO 639-1` (two letter code, eg: `fr`)
- one Language `ISO 639-1` (two letter code, eg: `fr`) or (`ISO 3166-1 alpha-2` ? ← countries)
Each course MAY have
......@@ -20,6 +43,7 @@ Each course MAY have
Keep it simple, for now. There will be room for events (class projects, etc.) later.
## Course File Format
We should probably follow something akin to [what Grav does](https://learn.getgrav.org/15/content/content-pages).
......@@ -107,6 +131,7 @@ Directory names MUST :
- be alphanumeric only, plus `-` and `_`.
- validate with case-sensitivity the regex `^[a-z][a-z0-9_-]+[a-z0-9]$`
## Possible driver implementations
- with Grav
......@@ -116,10 +141,12 @@ Directory names MUST :
Multiple frontends may be buit to display these courses.
## Tips
- http://flagpedia.net/emoji
## TODO
- Look up https://schema.org/Course and comply somehow
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment