Missing Documentation - Inbuilt Plugins Behavior
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 35/100
- Issue type
- Documentation
- Clarity
- Mostly clear
- Activity status
- Stale
- Tech stack
- javascript, python
- Domain
- documentation
Research direction
Start with docs/user-guide/configuration.md and core/src/plugins.js, then inspect the linked implementation such as core/src/plugins/error.js to inventory built-in plugins and their behavior. Create a documentation page covering each plugin, including which features depend on it, and correct the !plugin-name typo.
Written by the indexing model from the issue text.
Description
Background
When testing a PyScript application I noticed that when something was written to stderr, the application would append a div of class py-error to the document. With some digging I determined that this was part of the error plugin.
Problem
Other than mentioning that there are some inbuilt plugins, we do not go into any detail about what they are. Some of them are obviously, from context, related to features that are mentioned elsewhere in the docs such as py-editor, py-terminal, and even donkey is explained. But others, like deprecations-manager and codemirror have no explanation as to what they do. The only mention of error is that it can be disabled.
Location
The only mention of built-in plugins is under the "Plugins" section of configuration.md, where it links to plugin.js and makes an offhand mention that you can disable inbuilt plugin with an explanation point (e.g. !error).
Proposal
Create a page that goes through the plugins installed, and their behavior/purpose. Some of these plugins may be stub references that reference the actual feature pages, such as py-terminal, py-editor and donkey as separating what the feature does vs what the plugin does may be difficult, but I think having them documented as a) existing and b) essential for that feature to operate would at the very least prevent a help request from someone who is trying to use Terminal, wondering why it isn't working, only to find that they had disabled all inbuilt plugins.
Auxiliary Benefits
Documenting the inbuilt plugins will make it easier for developers to request improvements to the plugins, for example as an obvious improvement it might be better to configure the styling of the py-error class inside core.css rather than hard coding the values, allowing for easier customization of the behavior of the plugin without the need to write a custom implementation.
Nits
... using the
!pugin-nameconvention...
Pretty sure that should be !plugin-name.
- Dominant language
- Python
- Stars
- 17
- Forks
- 20
- PR merge metrics
- No merged PRs in 30d
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from pyscript/docs
-
Difficulty 1/5 Under an hour Newbie friendliness 65/100
-
Difficulty 1/5 Under an hour Newbie friendliness 72/100
-
Difficulty 1/5 Under an hour Newbie friendliness 68/100
-
Difficulty 4/5 3-5 days Newbie friendliness 32/100
-
Difficulty 4/5 3-5 days Newbie friendliness 30/100
Similar issues
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 90/100
learningequality/ricecooker#747 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
BSData/horus-heresy-3rd-edition#3171 ·
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
run-llama/llama_index#23199 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
KhronosGroup/glTF-Blender-IO#2769 ·