codecombat / codecombat/codecombat
Add property documentation syntax for Python, CoffeeScript, Lua, Clojure, Io
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 8.6k
- Forks
- 4.2k
- Avg merge
- 1d 4h
- Merged PRs (30d)
- 39
Description
(See also #399)
Calling all Scribes! In the spell palette, we currently have documentation like this:

But some of these things are written with JavaScript-specific syntax. We need to extend all the current Components' property documentation to handle the new syntax for Python, CoffeeScript, Lua, Clojure and Io.
There's a new process with this that just uses the level editor patch system, so you don't have to set up your dev environment or anything.
There are too many properties/languages to easily track who is working on what in this GitHub issue, so please use this Google Doc to mark when you are doing or have done things, since we can't merge patches instantly. Note that not all properties have any syntax differences between languages, so many fields can just be marked done with no changes.
0. Claim your target Component/Language in the spreadsheet.

1. Open any level in the level editor.

Different levels will have a few different Components needing documentation, but most are shared between most levels.
2. Click the Components tab.

3. Click on one of the Components.

4. Click the Component's Settings sub-tab.

5. Open the Property Documentation at the bottom.

6. Translate the JavaScript documentation into your programming language.
Look at programmable.Allied for a good example. Switch each field that has JavaScript-specific syntax to a multiple-language field, preserving the JavaScript one in a new javascript field, and adding your target language as another field.
Here's an example of changing from single-language (JavaScript) to multi-language:

7. Click "Submit Patch" under the chevron for the component to submit a patch (upper right).

8. Mark your language/Component "done" in the spreadsheet.
Good work!
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.
Research direction
Start by claiming one Component/language pair in the linked spreadsheet, then open the level editor at /editor/level/greed and inspect Components > Settings > Property Documentation. Use programmable.Allied as the example for converting JavaScript-specific fields into multilingual fields, submit the patch, and mark the spreadsheet entry done.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- clojure, coffeescript, javascript, lua, python
- Domain
- documentation
- Issue type
- Documentation
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100