updates for `/learn`
ShaunSHamilton opened this issue · comments
Shaun Hamilton commented
- make navbar optional?
- No need for the navbar if page is on/in
/learn
- No need to go to "projects" view, if a specific project is clicked on
- No need for the navbar if page is on/in
- save/get user token from
~/.local/share/code-server/coder.json
- Remember: If token does not exist, do not save progress to API
- Probably do this as a "plugin" system to "hook" onto events:
onTestsStart
,onTestsEnd
,onTestStart
,onTestEnd
,onProjectStart
,onLessonPassed
,onLessonFailed
,onProjectFinished
...
- use
activationEvents.onStartupFinished
for https://github.com/freeCodeCamp/courses-vscode-extension- The idea is to start the extension/project when VSCode is opened in the browser without intervention
- See about making this configurable so it does not always happen
Shaun Hamilton commented
On top of the plugin system, freecodecamp-os could be configurable to accept any parser that returns:
- description
- tests
- seed
- hints
I think a default parser (the current one) makes sense to keep, but it might be nice to allow users to write their own so their curriculum content does not even need to be in Markdown. The parser API would just need to get a lesson number and project name.
Shaun Hamilton commented
For the tokens/plugin system, should freecodecamp-os server emit webhooks? Or, should it import callable functions?
Shaun Hamilton commented
Closing as we are going a different direction for the moment.