This guide will tell you how you can and should contribute to JokeAPI.
Not following it might cause me to reject your changes but at the very least we will both lose time.
So please read this guide before contributing. Thanks :)
To submit a joke manually, you can use the form on this page.
To submit it through code, you can make use of the "submit" endpoint.
If you instead want to edit a joke yourself, you can find them in the jokes-xy.json
files in data/jokes/
To submit your changes, create a pull request. Also make sure to follow the code contribution instructions.
If you want a joke to be edited or deleted, please submit a new issue here.
Keep in mind, though, that I will not remove jokes based on opinions as that would defeat the API's main purpose, to provide jokes for everyone's taste.
npm run all
which will run these commands:
npm run validate-jokes
to make sure all jokes are formatted correctly.npm run validate-ids
to verify that all jokes have the correct ID.npm run lint
to check the code for any warnings or errors.npm run dep-graph
to generate a new dependency graph.npm run generate-changelog
to generate a Markdown changelog out of the plaintext one.npm run test
, which runs the unit tests for JokeAPI. If you are colorblind, you can run the command npm run test-colorblind
(will turn green into cyan and red into magenta).node JokeAPI
, request some jokes and test the areas you modified / added to make sure everything still works.contributors
object in the package.json
file :)
Sv443-Network/JokeAPI
as the base repo and master
as the base branch and selecting YourUsername/JokeAPI
as the head repo and YourBranch
as the compare branch
[WIP]
to the beginning of the title which will tell the repo maintainer(s) and automated scripts not to merge it yet.If you want to submit a translation, please follow these steps:
data/languages.json
. You'll need to specify it for every translation.data/errorMessages.js
by following the style of the other translations.data/translations.json
by also following the style of the other translations.contributors
object in the package.json
file :)fabiospampinato.vscode-highlight
- it will add custom styling to the syntax highlighting in the editor and make the code easier to read and work with.bin
folder to your %PATH%
/ $PATH
environment vaiable. Then, run the command npm run dependency-graph
and open the file dev/dependency-graph.html
in a browser.npm run add-token [amount]
. If you omit the "amount" parameter, the script will generate a single token. After you run the command, the tokens will be listed in the console and you can now (after restarting JokeAPI) use it in the Authorization
header to gain unlimited access to JokeAPI (better explanation here).