Themes are made up of layouts and components.
They should be installed in src/themes/[theme-name]
.
To enable a theme, adjust tsconfig.json
:
{
"extends": "astro/tsconfigs/strict",
"types": ["astro/client"],
"compilerOptions": {
"baseUrl": ".",
"paths": {
// Layouts and components for the theme
"@layouts/*": ["src/themes/accelerator/layouts/*"],
"@components/*": ["src/themes/accelerator/components/*"],
}
}
}
Authoring Themes
The easiest way to build an alternate theme is to copy the accelerator to use a starting point.
The only requirement is that you include the standard layouts in your theme-name/layouts
folder:
- Author.astro
- Default.astro
- Redirect.astro
- Search.astro
You can include whatever components you need to support your theme.
You can use the available shared @util/*
files in your theme.
Multiple / Child Themes
You can install many themes side-by-side and use components from them to create layouts and components of your own. Use the top-level layours and components folders to coordinate this and reference the appropriate theme files to use them.
Theme Styles
You can import styles into your theme from the theme directory, or provide an external stylesheet to be added to the /public/css/
folder.