This is the repository of the website expressjs.com. It is hosted directly from the repository as a GitHub Pages website.
GitHub Pages websites being served through Jekyll, you will need to replicate the setup on your local machine to preview the website locally.
Install Ruby and Jekyll on your system, if you don't have them already.
Install the jekyll-redirect-from gem:
$ gem install jekyll-redirect-from
Once installed, cd
to the repository directory and run Jekyll using the following command:
$ jekyll s
Then, load http://localhost:4000/ on your browser.
Jekyll uses a variant of Markdown known as Kramdown, read up the docs if you need to go beyond basic Markdown in the doc files.
To understand the template system used by Jekyll, read up the Liquid template engine docs.
Feel free to make changes to the template files or the document files. The supporting docs are located in their respective directories, and the API docs are located under the _includes
directory.
Jekyll comes built-in with GitHub Pages. Since we are already using GitHub Pages to host the website, it makes sense to leverage the capabilities it provides. It's all about using the right tool, for the right job, under the right circumstances.
IMPORTANT: We have professional translations of the Express documentation into:
- German
- French
- Italian
- Spanish
- Brazilian Portuguese
- Japanese
- Simplified Chinese
- Traditional Chinese
- Russian
- Korean
Therefore we can no longer accept community translations for these languages. However, we welcome contributions of translations into other languages, following the procedure below.
Follow these steps:
- Clone the Express repository
- Create a directory for the language of your choice using its ISO 639-1 code as its name.
- Copy
index.md
,api.md
,starter/
,guide/
,advanced/
,resources/
,4x/
, and3x/
, to the language directory. - Remove the link to 2.x docs from the "API Reference" menu.
- Update the
lang
variable in the copied markdown files. - Update the
title
variable in the copied markdown files. - Create the header, footer, notice, and announcement file for the language in the
_includes/
directory, in the respective directories, and make necessary edits to the contents. - Create the announcement file for the language in the
_includes/
directory. - Create a copy of the
_includes/api/en
and rename it according to the language code. - Make sure to append
/{{ page.lang }}
to all the links within the site.