https://github.com/jack-r-warren/jackwarren-info
My own personal website, built with React, Gatsby, Sass, and Remark
https://github.com/jack-r-warren/jackwarren-info
gatsby graphql netlify react remark scss
Last synced: about 2 months ago
JSON representation
My own personal website, built with React, Gatsby, Sass, and Remark
- Host: GitHub
- URL: https://github.com/jack-r-warren/jackwarren-info
- Owner: jack-r-warren
- License: other
- Created: 2019-12-25T02:28:11.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2023-07-20T00:55:22.000Z (over 2 years ago)
- Last Synced: 2025-04-05T23:06:52.679Z (7 months ago)
- Topics: gatsby, graphql, netlify, react, remark, scss
- Language: JavaScript
- Homepage: https://jackwarren.info
- Size: 100 MB
- Stars: 5
- Watchers: 0
- Forks: 0
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- Contributing: .github/CONTRIBUTING.md
- License: LICENSE
- Code of conduct: .github/CODE_OF_CONDUCT.md
- Security: .github/SECURITY.md
Awesome Lists containing this project
README
# [jackwarren.info](https://jackwarren.info)
[](https://app.netlify.com/sites/jackwarren-info/deploys)
[](https://lgtm.com/projects/g/jack-r-warren/jackwarren-info/context:javascript)
[](https://github.com/prettier/prettier)
[](https://dependabot.com)
[](https://github.com/jack-r-warren/jackwarren-info/network/dependencies)
This is the codebase behind my personal website.
- Built with [React](https://reactjs.org/)
- Generated with [Gatsby](https://www.gatsbyjs.org/)
- Styled with [Sass](https://sass-lang.com/)
- Processed with [Remark](https://remark.js.org/)
- Formatted with [Prettier](https://prettier.io/)
- Updated by [Dependabot](https://dependabot.com/)
- Deployed to [Netlify](https://www.netlify.com/)
- Proxied by [Cloudflare](https://www.cloudflare.com)
This site is fully copyrighted by Jack Warren; more information is available in the [LICENSE file](https://github.com/jack-r-warren/jackwarren-info/blob/master/LICENSE).
## Configuration
### Environment Variables
- `URL` - The base URL of the website, with the leading protocol and without the trailing slash
- Set automatically by Netlify during deployment
- Defaults to `https://jackwarren.info`
- `CONTEXT` - The context for building
- Set automatically by Netlify [during deployment](https://docs.netlify.com/site-deploys/overview/#deploy-contexts)
- Defaults to `development`
- `DEPLOY_PRIME_URL` - The specific URL of the deployment
- Set automatically by Netlify during deployment
- Only used if the `CONTEXT` is not `development` or `production`
- Can be ignored for development purposes (used automatically in Netliy branch deployments and deployment previews)
[Dotenv](https://www.npmjs.com/package/dotenv) is configured in this project and it is the recommended way to set these variables.
For a local development environment, create a `.env` file at the root of the project containing the following:
```
URL=http://localhost:8000
CONTEXT=development
```
### GraphQL
The GraphQL endpoint is only available during development/rendering.
The `.graphqlconfig` assumes the schema will be available at Gatsby's development-time default of `http://localhost:8000/___graphql`.
## Running
You'll need [Node.js, npm](https://www.gatsbyjs.org/tutorial/part-zero/#-install-nodejs-and-npm), and [Git](https://www.gatsbyjs.org/tutorial/part-zero/#install-git).
Install the Gatsby CLI if you don't have it already:
```shell script
npm install -g gatsby-cli
```
Clone down this repository:
```shell script
git clone git@github.com:jack-r-warren/jackwarren-info.git
```
For local development, run the development server:
```shell script
npm run develop
```
To make the development server available on your local network (assuming your firewall allows access to port 8000):
```shell script
npm run develop -- --host=0.0.0.0
```
To make a production build:
```shell script
npm run build
```
## Tooling
[Prettier](https://prettier.io/) is used for code formatting, and is called by the `format` npm task.
[Husky](https://www.npmjs.com/package/husky) is used to run `pretty-quick` before all commits.
[Stylelint](https://stylelint.io/) is used for additional SCSS linting.