Gridsome is an open-source project built by core maintainers and contributors. We want to make it easy for anyone to contribute to Gridsome. Contribute to core, build plugins, improve documentation or write a blog post. It all helps Gridsome on its mission to simplify Jamstack development.
Read the code of conduct.
Gridsome uses a monorepo pattern to manage its dependencies and core plugins. To contribute to core you need to install Gridsome core locally. This also enables you to run personal Gridsome projects on latest Gridsome development version.
Install Node.js 8.3 or higher and Yarn. It's also recommended to install Lerna globally.
https://github.com/gridsome/gridsome.git
repository.~/projects
folder.yarn
(or lerna bootstrap
if installed).gridsome develop
.To use @gridsome/cli
in the repo as a global command. Enter the ~/packages/cli
folder and run npm link
.
Yarn will add dependencies from your test projects to the root yarn.lock
file. So you should not commit changes in that file unless you have added dependencies to any of the core packages. If you need to commit it, remove your projects from the ~/projects
folder temporary and run yarn
or lerna bootstrap
in the root folder. Yarn will then clean up the lock file with only core dependencies. Commit the file and move your projects back and run yarn
or lerna bootstrap
again to start developing.
We are a strong believer that documentation is very important for any open-source projects. Gridsome uses, of course, Gridsome for its website and documentation.
You can also clone the Gridsome.org repo and work locally on documentation. Install it like any other Gridsome project.
Creating guest blog posts for Gridsome.org users is a great way to contribute to Gridsome community. A typical blog post could be: How our company is using Gridsome to do XX, or How to integrate XX with Gridsome.
To add a new blog post to the gridsome.org blog:
Prepare repository:
yarn
to install all of the website's dependencies.gridsome develop
to preview the blog at http://localhost:8000/blog/
./blog
folder.Create your contributor profile:
/contributors/images
./contributors/contributors.yaml
.Setup blog post:
/blog/yyyy-mm-dd-title
(for example, 2018-09-14-say-hello-to-gridsome). Within this newly created folder add an index.md
file.title
, date
, author
, and tags
to the frontmatter of your index.md
.index.md
./docs/how-to-contribute/
instead of https://gridsome.org/docs/how-to-contribute/
docs
, like docs/your-change
.Contributing a new starter project is a great way to help other Gridsome users to get off the ground quickly. If you want to list your project as an "official" Starter, you must commit the appropriate entry inside the Gridsome.org repo.
To add your Starter to gridsome.org:
Prepare repository:
yarn
to install all of the website's dependencies.Create your contributor profile:
/contributors/images
./contributors/contributors.yaml
.Add your starter project:
/starters/screenshots
(840x840px / 1680x1680 for retina)./starters/starters.yaml
.Recommendations to your Starter project
gridsome-starter-<YOUR PROJECT SUFFIX>
Committing your Starter
gridsome develop
to preview starter at http://localhost:8000/starters/
.Coming soon...