astro

Astro Quickstart Template

This is a bare-bones Astro project that has everything you need to quickly deploy it to Netlify.

Hate reading, here's a video: https://youtu.be/SknFflQVOys!

Love reading, here's blog post: www.netlify.app/blog/deploy-your-astro-project-fast/!

⚡️ Quick Setup + Deploy Option

Click this button and it will help you create a new repo, create a new Netlify project, and deploy!

Deploy to Netlify Button

💫 Regular Setup

1. Cloning + Install Packages

  • Clone this repo with one of these options:

    • Click the 'Use this template' button at the top of the page
    • Or via the command line git clone https://github.com/netlify-templates/astro-quickstart
  • Then install the necessary packages and run the project locally to make sure everything works.

    npm install
    npm run dev

Alternatively, you can run this locally with the Netlify CLI's by running the netlify dev command for more options like receiving a live preview to share (netlify dev --live) and the ability to test Netlify Functions and redirects.

2. Deploying

  • Install the Netlify CLI globally npm install netlify-cli -g

  • Run npm run build

  • Then use the netlify deploy for a deploy preview link or netlify deploy --prod to deploy to production

Here are a few other ways you can deploy this template:

  • Use the Netlify CLI's create from template command netlify sites:create-template astro-quickstart which will create a repo, Netlify project, and deploy it

  • If you want to utilize continuous deployment through GitHub webhooks, run the Netlify command netlify init to create a new project based on your repo or netlify link to connect your repo to an existing project

Astro 💙 Netlify Resources

Here are some resources to help you on your Astro + Netlify coding fun!

Hope this template helps :) Happy coding 👩🏻‍💻!


🚀 Project Structure

Inside of your Astro project, you'll see the following folders and files:

/
├── public/
│   └── favicon.ico
├── src/
│   ├── components/
│   │   └── Layout.astro
│   └── pages/
│       └── index.astro
└── package.json

Astro looks for .astro or .md files in the src/pages/ directory. Each page is exposed as a route based on its file name.

There's nothing special about src/components/, but that's where we like to put any Astro/React/Vue/Svelte/Preact components or layouts.

Any static assets, like images, can be placed in the public/ directory.

🧞 Commands

All commands are run from the root of the project, from a terminal:

Command Action
npm install Installs dependencies
npm run dev Starts local dev server at localhost:3000
npm run build Build your production site to ./dist/
npm run preview Preview your build locally, before deploying

👀 Want to learn more?

Feel free to check our documentation or jump into our Discord server.