Skip to content

A template repo for creating theme integrations for Astro with Astro Theme Provider

Notifications You must be signed in to change notification settings

astrolicious/astro-theme-provider-template

Repository files navigation

Astro Theme Provider Template

This repository contains a template for creating an Astro theme integration with Astro Theme Provider.

How to Author a Theme

  1. Clone the theme template:
git clone https://github.com/astrolicious/astro-theme-provider-template.git my-theme
  1. 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
  1. 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
  1. Change the theme name: The default name inside this repo is my-theme. It is recommended to use find and replace to replace all occurrences of my-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
  2. Update package.json: Add homepage and repository 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 like description, keywords, license, author, etc. (see: configuring package.json).
  3. 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.

About

A template repo for creating theme integrations for Astro with Astro Theme Provider

Resources

Code of conduct

Security policy

Stars

Watchers

Forks

Sponsor this project