Skip to content

Latest commit

 

History

History
95 lines (70 loc) · 3.8 KB

README.md

File metadata and controls

95 lines (70 loc) · 3.8 KB


nodejs.org website built using Nextra (Next.js) with TypeScript, SCSS and MDXv2



What is this repo?

Nodejs.org by the OpenJS Foundation is the official website for the Node.js® JavaScript runtime. This repo is the source code for the website. It is build using Nextra, a Next.js based static site generator.

Quick-Start Locally

npm ci
npm run serve
# listening at localhost:3000

Structure of this Repository

  • Page templates are in /layouts
  • Global styles are in /styles
  • Public files are in /public
  • i18n configuration is on i18n/config.json
  • Global static files are in /public/static
    • Legacy static files are in /public/static/legacy
  • All content is in /pages
    • Initial development usually happens in English: /pages/en
    • /i18n/locales/{{locale}}.json is where global localization information lives.
    • All content is in Markdown and is per locale.
    • The top of each Markdown file is a block of YAML (Frontmatter) for page specific localization information that is passed to various templates.
    • The bulk of the Markdown content for each page is referenced as {children} on their respective JSX Layout (layouts/)

Contributing

This project adopts the Node.js Code of Conduct.

Any person who wants to contribute to the Website is welcome! Please read Contributing Guidelines and see the Figma Design to understand better the structure of this repository.

To translate content into other languages

If you want to help translate to other languages or improve existing translations, it isn't necessary to work from GitHub. You can and should do it through Crowdin, this is the correct workflow.

Crowdin is an online tool that facilitates the user experience for the translator, here is more information:

Website translations are handled via Crowdin.

To help with localization, please read the Translation guide.

Deployment

Full setup is in https://github.com/nodejs/build/tree/master/ansible/www-standalone minus secrets and certificates. The webhook is setup on GitHub for this project and talks to a small Node server on the host which does the work. See the github-webhook package for this.

Relevant Links

Code of Conduct

Contributing Guidelines

Collaborator Guide

Figma Design

Content vs Code