Philipp Legner
Philipp Legner
Add the ability to configure and import plugins. This means that we will need to update the places where we access `PROJECT_DIR` and `STUDIO_DIR` directly to also loop over all...
Currently, the public directories exposed by `express.static()` at https://github.com/mathigon/studio/blob/main/server/app.ts#L139 contain some internal files, for example `search-index.json` in `.output` and all the course source files like `content.md` in `content/`. We should...
Right now, this is disabled here: https://github.com/mathigon/studio/blob/main/build/assets.js#L63 We either need to generate separate `.rtl.css` files, or merge both styles into a single file using`html[dir]`.
We should use the schema in `server/interfaces.ts` to type check all YAML configuration files (e.g. `config.yaml` and `glossary.yaml`).
Our entire codebase should be in TS, to enable better type checking and code-reusability, especially across subfolders like `build/` and `server/`.
To parse the course markdown, we currently use [marked.js](https://marked.js.org/), together with numerous string/regex-based extensions, e.g. to add HTML blocks, inline blanks and variables, and many other elements. This approach is...