This was the old developer website for hapi under hapijs.com. For the current site check https://github.com/hapijs/hapi.dev.
Behind the scene the website is using docker
for its development environment because it relies on redis
to cache some of its data. For you to run the website locally you need to setup docker
on your local machine. Please refer to docker
official documentation.
Once docker
is installed, you can follow the next steps:
-
First, obtain a token from github here and select checked scopes only (only two)
- repo : Full control of private repositories
- repo status : Access commit status
- repo_deployment : Access deployment status
- public_repo : Access public repositories
- repo:invite : Access repository invitations
- repo : Full control of private repositories
For more details, here is github's documentation.
-
Copy the
config/default.json
file toconfig/local.json
and put your token in thegithubToken
field oflocal.json
. NOTE: Please do not commit the file that contains your real github token. That would make it public and allow anyone to look at this repo and use your token as though they were you. -
Run the following commands
make restart
You may now visit http://localhost:3000
in your browser to view the site.
The server also runs a file watcher that will automatically rebuild content when files are changed.
Note: for committing you will need to include the public/* files that are generated during the make process. The deploy does not do the make.
In the directory lib/tutorials
we have some directories with the name of the languages translated, to add a new translation, simply add a new folder in the lib/tutorials
with your translation.
An Example, if you translate the tutorials, to Brazilian Portuguese, you must use the pt_BR
as the name of the directory.
Inside the directory pt_BR
, you need to follow the same struture we use in en_US
, with all tutorials separated in markdown files and an index.js
file that's export the tutorials and the titles.
After finish the translations, you also need add your translation in the index.js
file inside lib/tutorials
.
hapijs.com maintains a list of community-created plugins here. If there are any plugins you have created or one you use often that isn't listed please send a pull request. Please note the existing categories, but if your plugin does not fit one feel free to create your own. Please keep the plugins in alphabetical order to be fair to all contributors.