Nodejs.dev site built using Gatsby.js with React.js, TypeScript, Emotion, and Remark.
Watch this repo and nodejs/website-redesign. This repo is a codebase for the initiative. Ongoing work is also happening in the administrative/planning repo at nodejs/website-redesign.
-
Install Yarn (if Yarn Package Manager is not available on your machine).
Yarn has an installation guide for your specific configuration. Happy knitting!
-
Install dependencies.
# install the dependencies yarn install -
Start developing.
# "start": "gatsby develop" yarn start -
Open the source code and start editing!
Your site is now running at
http://localhost:8000!Note: You'll also see a second link:
http://localhost:8000___graphql. This is a tool you can use to experiment with querying your data. Learn more about using this tool in the Gatsby tutorial.
A quick look at the top-level files and directories you'll see in a Gatsby project.
.
βββ node_modules
βββ src
βββ .gitignore
βββ .nvmrc
βββ .prettierrc
βββ empty.env
βββ gatsby-browser.js
βββ gatsby-config.js
βββ gatsby-node.js
βββ gatsby-ssr.js
βββ LICENSE
βββ package-lock.json
βββ package.json
βββ README.md
βββ tsconfig.json
βββ tslint.json
βββ yarn.lock
-
/node_modules: The directory where all of the modules of code that your project depends on (npm packages) are automatically installed. -
/src: This directory will contain all of the code related to what you will see on the front-end of your site (what you see in the browser), like your site header, or a page template. βSrcβ is a convention for βsource code.β -
.gitignore: This file tells git which files it should not track/not maintain a version history. -
.nvmrc: NVM configuration so packages work as they should -
.prettierrc: This is a configuration file for a tool called Prettier, which is a tool to help keep the formatting of your code consistent. -
empty.env: Rename to.envand set your Contentful API key -
gatsby-browser.tsx: This file is where Gatsby expects to find any usage of the Gatsby browser APIs (if any). These allow customization/extension of default Gatsby settings affecting the browser. -
gatsby-config.js: This is the main configuration file for a Gatsby site. This is where you can specify information about your site (metadata) like the site title and description, which Gatsby plugins youοΏ½οΏ½d like to include, etc. (Check out the config docs for more detail). -
gatsby-node.js: This file is where Gatsby expects to find any usage of the Gatsby node APIs (if any). These allow customization/extension of default Gatsby settings affecting pieces of the site build process. -
gatsby-ssr.tsx: This file is where Gatsby expects to find any usage of the Gatsby server-side rendering APIs (if any). These allow customization of default Gatsby settings affecting server-side rendering. -
LICENSE: Gatsby is licensed under the MIT license. -
package-lock.json(Seepackage.jsonbelow, first). This is an automatically generated file based on the exact versions of your npm dependencies that were installed for your project. (You wonβt change this file directly). -
package.json: A manifest file for Node.js projects, which includes things like metadata (the projectβs name, author, etc.). This manifest is how npm knows which packages to install for your project. -
README.md: A text file containing useful reference information about your project. -
tsconfig.json: Config file for TypeScript -
tslint.json: TS Lint configuration file -
yarn.lock: Yarn is a package manager alternative to npm. You can use either yarn or npm, though all of the Gatsby docs reference npm. This file serves essentially the same purpose aspackage-lock.json, just for a different package management system.
This repository contains no documentation content. Content is pulled from across the Node.js Github Org, Contentful, and other data sources and stitched together into a cohesive website.
The src/documentation directory currently contains all the getting started content.
Looking for more guidance? Full documentation for Gatsby lives on the website. Here are some places to start:
-
For most developers, we recommend starting with our in-depth tutorial for creating a site with Gatsby. It starts with zero assumptions about your level of ability and walks through every step of the process.
-
To dive straight into code samples head to our documentation. In particular, check out the βGuidesβ, API reference, and βAdvanced Tutorialsβ sections in the sidebar.