Deploy an Astro site
In this guide, you'll create a new Astro application and deploy it using Cloudflare Pages.
Setting up a new project
$ mkdir astro-site && cd astro-site$ npm init astro
init, Astro will ask you which project type you'd like to set up. Your answers will not affect the rest of this tutorial, so please feel free to select what's ideal for your project.
Creating a GitHub repository
# setup the local repository$ git init$ git remote add origin https://github.com/<username>/<repo>$ git branch -M main # commit all initial files$ git add -A$ git commit -m "initial commit" # send commit to new GitHub repo$ git push -u origin main
Deploying with Cloudflare Pages
You will be asked to authorize access to your GitHub account, if you haven't already done so. Cloudflare needs this so that it can monitor and deploy your projects from source. You may narrow access to specific repositories if you prefer; however, you will have to manually update this list as you wish to attach more repositories to Cloudflare Pages.
Select the new GitHub repository that you created above and, in the configuration section, provide the following information:
Optionally, you can customize the
Project Name setting. It defaults to the repository's name, but it does not need to match. This value is assigned as your
Once you've configured your site, click the "Save and Deploy" button!
You'll see your first deploy pipeline in progress. Pages installs all dependencies and builds the project as specified.
Cloudflare Pages will automatically rebuild your project and deploy it on every new pushed commit.
Additionally, you'll have access to , which repeat the build-and-deploy process for pull requests. With these, you can preview changes to your project with a real URL before deploying them to production.
Congratulations! You've deployed your Astro site to Cloudflare Pages!