mirror of
https://github.com/theoludwig/programming-challenges.git
synced 2024-12-08 00:45:29 +01:00
docs(contributing): add a programming language
This commit is contained in:
parent
c55c67e0a5
commit
59df53fcad
@ -6,7 +6,7 @@ Thanks a lot for your interest in contributing to **programming-challenges**!
|
||||
|
||||
- [Submit a challenge](#submit-a-challenge)
|
||||
- [Submit a solution](#submit-a-solution)
|
||||
- Add support for a new language
|
||||
- [Add support for a new language](#add-a-language)
|
||||
- Correct spelling errors, improvements or additions to documentation files (README, CONTRIBUTING...).
|
||||
|
||||
## Submit a challenge
|
||||
@ -19,7 +19,7 @@ You can start editing the `test` folder of the challenge with corresponding `inp
|
||||
|
||||
## Submit a solution
|
||||
|
||||
You can submit a new solution by running the command `programming-challenges generate challenge --challenge="<name>" --github-user="<your-github-user>" --language="<your-favorite-language>" --solution="<your-solution>"`.
|
||||
You can submit a new solution by running the command `programming-challenges generate solution --challenge="<name>" --github-user="<your-github-user>" --language="<your-favorite-language>" --solution="<your-solution>"`.
|
||||
|
||||
After running this command, a new folder will be created inside the `solutions` folder of the challenge.
|
||||
|
||||
@ -27,6 +27,17 @@ Start writing some code, inside the `solution` file with your favorite programmi
|
||||
|
||||
Before submitting the solution, make sure it passes all the tests by running `programming-challenges run test --affected`.
|
||||
|
||||
## Add a language
|
||||
|
||||
You can add support for a new language, so you can solve the challenges with even more programming languages!
|
||||
|
||||
- First create a new folder inside `templates/docker` with the file extension of the new programming language (e.g: `js`, `cpp`, etc.)
|
||||
- Inside this new folder create a `Dockerfile`, to compile and execute the solution
|
||||
- Create a new template inside `templates/solution` folder with the file extension of the new programming language, with the basic boilerplate to read from `stdin` and print to `stdout` the result
|
||||
- Run the command `programming-challenges generate solution --challenge="<name>" --github-user="<your-github-user>" --language="<your-new-language>" --solution="<your-solution>`
|
||||
|
||||
Before submitting the new programming language, make sure it passes all the tests by running `programming-challenges run test --affected`
|
||||
|
||||
## Pull Requests
|
||||
|
||||
- **Please first discuss** the change you wish to make via [issue](https://github.com/Divlo/programming-challenges/issues) before making a change. It might avoid a waste of your time.
|
||||
@ -60,3 +71,18 @@ Types define which kind of changes you made to the project.
|
||||
### Scopes
|
||||
|
||||
Scopes define what part of the code changed.
|
||||
|
||||
- cli
|
||||
- challenges
|
||||
- solutions
|
||||
- languages
|
||||
|
||||
### Examples
|
||||
|
||||
```sh
|
||||
git commit -m "feat(languages): add C# support"
|
||||
git commit -m "fix(cli): improve --ci option to `run test` command"
|
||||
git commit -m "feat(challenges): add `hello-world`"
|
||||
git commit -m "feat(solutions): add `hello-world/javascript/function`"
|
||||
git commit -m "docs: fix typo `at` should be `on`"
|
||||
```
|
||||
|
Loading…
Reference in New Issue
Block a user