Back

Installation

Two way to install. “Template” way is lightweight and simple, but hard to update; while “Fork” way is easy to update but needs some skills for git.

Install Using Template

  1. Install the theme

    Execute the following command in the your user directory to install the theme:

    bun create astro@latest --template cworld1/astro-theme-pure
    
    shell

    By default, this command will use the template repository’s main branch. To use a different branch name, pass it as part of the --template argument: cworld1/astro-theme-pure#<branch>.

  2. Answer the questions and follow the instructions of the CLI wizard.

  3. VOILA!

    You can now start the Astro dev server and see a live preview of your project while you make it your own!

Install Using Fork

You only need to click fork button at theme repository to create your project; then clone the forked repository to your local machine.

git clone https://github.com/<your-username>/astro-theme-pure.git
shell

Then, you can start the Astro dev server and see a live preview of your project while you make it your own!

Start the Dev Server

Go to your project directory:

cd ./<your-project>
shell
bun dev
shell

Next, please read the configuration notes first and continue configuring the theme.

Migrate to Astro

See Astro: Migrate an existing project to Astro.

Theme File Structure

The theme file structure is as follows:

  • public: Static resources that will be copied to the root directory
  • src:
    • assets: Static resources
    • components: Components used in the theme, also include user-like components, like Card, Collapse, Spoiler, etc.
    • layouts: Basic site layouts
    • pages: Pages like 404, about, blog, docs, index, etc.
    • plugins: Extended plugins used in the theme
    • types: Typescript type definitions
    • utils: Utilities
    • site.config.ts: Theme configuration file
  • astro.config.mjs: Astro configuration file
  • eslint.config.mjs: ESLint configuration file
  • prettier.config.mjs: Prettier configuration file
  • tailwind.config.mjs: Tailwind CSS configuration file
  • tsconfig.json: Typescript configuration file
  • package.json: Package information

Simple Setup

  1. Remove docs files

    • Remove the src/pages/docs directory
    • Remove the menu declaration in src/site.config.ts:
    src/site.config.ts
    // ...
    export const menuLinks: MenuLinks = [
       // ...
       // Docs menu
       { 
          link: '/docs/list', 
          label: 'Docs'
       }, 
    ]
    
    ts
  2. Change the site favicon.

    Replace the public/favicon/* files with your own favicon.

  3. Replace your avatar image.

    Replace the src/assets/avatar.png file with your own avatar image.

  4. Configure the site

    You can configure your project inside the src/site.config.ts configuration file:

    src/site.config.ts
    export const siteConfig: SiteConfig = {
       author: 'CWorld / Arthals',
       title: 'Astro Theme Pure',
       site: 'https://astro-theme-pure.vercel.app',
       description: 'Stay hungry, stay foolish',
       // ...
    }
    
    export const footerConfig: FooterConfig = { /* ... */ }
    export const integrationConfig: IntegrationConfig = { /* ... */ }
    // ...
    
    ts
  5. Typescript Syntax

    The configuration file site.config.ts uses Typescript syntax. If you are not familiar with TS syntax, please read about it here first.