Start a new project

For new Astro projects, start with the UluBit Astro Starter. It provides the standard UluBit project structure, configuration, foundations, UI package, and site shell so each project begins from a consistent working baseline.

The starter is a starting point, not a fixed architecture. Adapt it when a project has requirements that the standard setup does not cover.

Prerequisites

Before creating a project, make sure you have:

  • Node.js 22.12 or later
  • pnpm

Create the project

Run the Astro project creator with the UluBit starter:

pnpm create astro@latest --template rodrigoperochena/ulubit-astro-starter

pnpm create astro@latest runs Astro’s project creation tool. The --template option tells Astro to create the project from the UluBit Astro Starter instead of one of Astro’s default templates.

Follow the setup prompts to choose the project directory and install the dependencies.

If you skip dependency installation during setup, install them afterwards:

pnpm install

Start the development server

Move into the project directory if necessary and start Astro:

pnpm dev

Open the local URL shown in the terminal. By default, Astro uses http://localhost:4321.

You should see the starter homepage with the base UluBit project shell and navigation working.

Verify the project

Before starting project-specific work, check the starter and create a production build:

pnpm check
pnpm build

pnpm check checks the Astro and TypeScript files for errors. pnpm build creates the production build and confirms that the project can be built successfully.

Both commands should complete without errors.

Create from GitHub

As an alternative to the Astro CLI, create a repository directly from the UluBit Astro Starter template on GitHub.

After cloning the new repository locally, install its dependencies and start the development server.

Starter updates

The starter evolves as UluBit projects reveal better patterns, fixes, and shared requirements.

Creating a project copies the starter as it exists at that point. Existing projects do not automatically receive later starter changes, so use the starter changelog and releases to identify updates worth applying to older projects.

Once the project is running and verified, continue with Configure a Project to replace the starter defaults with the project’s information, assets, fonts, navigation, and other project-specific settings.