developers.sparkpost.com
developers.sparkpost.com copied to clipboard
SparkPost Developer Site and Documentation
developers.sparkpost.com
This repo contains the code and documentation that powers developers.sparkpost.com.
Get started
Requirements
To develop with this repository, you must have the following:
- Node: version 14.16.1
- npm: version 7 recommended (version 6 is incompatible with the current lock file)
- A clone of this repo
Installing dependencies
-
cd developers.sparkpost.com
to go into the website directory - Run
npm run bootstrap
to install the npm dependencies
Local development
When developing locally, you have two options: developing the whole website or develop just the API reference section. All content will hot-reload. If you aren't seeing changes, restart the development server.
Develop the website
This will develop the whole developer site.
- Run
npm run develop
- Open http://localhost:4000/ to view the website.
Develop API reference
This is what you want if you are making documentation changes.
This will only develop the API reference pages and skip unnecessary queries.
- Run
npm run docs
- Open http://localhost:4000/api/ to view the docs.
Develop Netlify Lambda Functions
To develop Netlify Functions locally, run npm run lambda
. This will start a second development server for the serverless functions.
Each file located in the lambda/
directory will be deployed as a serverless function.
Contributing
You'll find the all the content, pages, and data inside the content
folder. If you are contributing content, take a
few minutes and read through the contributing guidelines.
Create a branch
Create a branch for your work in the repo:
-
git checkout main
to checkout the main branch -
git pull origin main
to get the lastest code -
git checkout -b your-branch-name
to create a branch
Make your changes
- Follow the Local development instructions to start the development server
- Make your changes as needed
- Changes to any files in the
content
andsrc
directories will hot-reload. - If you make changes files in the
plugins
andgatsby
directories or any top-level files, you will need to restart the server.
Push your changes
- Stage and commit your changes (
git add -A && git commit -m "Describe what you did"
) - Push your changes (
git push origin your-branch-name
) -
Create a Pull Request against the
main
branch. Netlify will publish a deploy preview so you can share and preview your changes as a live site.
Troubleshooting
M1 Pro related issues
fatal error: 'vips/vips8' file not found:
during npm run bootstrap
- You have to install "libvps" globally on your mac system to get this plugin to work on your development machine. You need brew installed to do this.
- The "libvps" depends on gcc, so do:
-
brew install --build-from-source gcc
-
brew install vips
- Proceed with
npm run boostrap
again
FATAL ERROR: wasm code commit Allocation failed - process out of memory
during npm run docs
- Install
node v.16.14.0
(you can use nodenv or node-build for that) - Proceed with
npm run docs
again