Free & Open Source Gatsby Themes by LekoArts
Get high-quality and customizable Gatsby themes to quickly bootstrap your website! Choose from many professionally created and impressive designs with a wide variety of features and customization options. Use Gatsby Themes to take your project to the next level and let you and your customers take advantage of the many benefits Gatsby has to offer.
๐จ Themes Overview
๐ผ Contents
This repository is a collection of my Gatsby themes, managed as a monorepo with Changesets and yarn workspaces.
.changeset
: Changeset files and configuration..github
: GitHub actions, templates for issues, and FUNDING file. A GitHub action will publish the/examples
as starters to individual GitHub repositories. Another GitHub action will handle the publishing of packages.cypress
: Contains the Cypress tests forexamples
.examples
: Contains the corresponding example sites for thethemes
. These projects can and should be used as a starter and will be copied over to their own repository. Hence they contain example data and additional Gatsby plugins (e.g.gatsby-plugin-manifest
). The folder names are the contents aftergatsby-theme-*
.packages
: Shared helpers and utilities for the themes. Compiled with tsup.plop-templates
: Template for plop.js.scripts
: In order to run the tests on GitHub Actions some utility bash scripts are needed which are located here.themes
: Contains the themes themselves. They should only have the bare minimum of plugins installed (asexamples
can expand them) and also useTheme UI
for styling. The naming of the folders must begatsby-theme-[name-with-dashes]
and the package name under the scope of@lekoarts
.www
: Contains the source code for themes.lekoarts.de.vite.config.ts
&vitest-setup.ts
: Vitest is used for Unit Testing.
๐ค How to Contribute
Make sure that you have yarn
installed on your machine (as it's mandatory for yarn workspaces
). Fork this repository, clone it and run yarn
in the root directory.
To launch the development server of an example site, use:
yarn workspace [examples/name] develop
Or for a build:
yarn workspace [examples/name] build
In the case of examples/emma
this command would be yarn workspace emma develop
. Now you can make changes to the respective theme and see them via Hot-Reloading.
Commit your changes to a feature branch of your fork and open up a PR against this repository. The PR will have checks in place (unit and end-to-end tests) which you can also run on your machine in preparation for the PR.
Have a look at the contributing guide to learn more.
๐คฉ Support Me
Thanks for using this project! I'm always interested in seeing what people do with my projects, so don't hesitate to tag me on Twitter and share the project with me.
Please star this project, share it on Social Media or consider supporting me on Patreon or GitHub Sponsor!
๐ Learning Gatsby Themes
Articles from lekoarts.de
- How I used Theme UI to build my Gatsby Themes library
- Setting up a Gatsby Themes workspace with TypeScript, ESLint & Cypress
- Specimens for Gatsby powered Design Systems
- Creating your own Status Dashboard with Gatsby