This repository contains a template for creating an Astro theme integration with Astro Theme Provider
.
- Clone the theme template:
git clone https://github.com/astrolicious/astro-theme-provider-template.git my-theme
- Navigate to the created directory and install dependencies:
Important: This repo uses pnpm workspaces, you must use pnpm as your package manager
cd my-theme/
pnpm install
- Run the playground to generate types for theme development and preview any changes:
Important: The playground always has to be running to generate types when authoring a theme
pnpm playground:dev
- Change the theme name: The default name inside this repo is
my-theme
. It is recommended to usefind and replace
to replace all occurrences ofmy-theme
inside the repo with the name of your own theme. If you can't find and replace, you can manually change the name inside the following files:package/package.json
playground/package.json
(Re-install dependencies inside playground after renaming)- Update imports inside the
/package/src
folder
- Update
package.json
: Addhomepage
andrepository
properties to your theme package (package/package.json
), you should see warnings in the console that explains this further. While you are there, add or modify any other properties you may want likedescription
,keywords
,license
,author
, etc. (see: configuringpackage.json
). - Explore! Authoring a theme using
astro-theme-provider
is similar to creating a normal Astro project. Explore the repo and check out the docs to learn more about how to author a theme.