Frameworks compatibility | Astro

About Astro

Astro is a static site generator that compiles your content into static HTML. It uses a component-based architecture where you can write components in your preferred framework (React, Vue, Svelte, etc.) and Astro will render them to static HTML at build time. This approach results in minimal JavaScript being sent to the client, as components are rendered to HTML by default.

Key features:

  • Static HTML generation at build time
  • Component-based architecture with framework support
  • Partial hydration through Islands Architecture
  • Built-in support for Markdown and MDX
  • TypeScript support out of the box
  • File-based routing system

You can deploy your Astro project either by using our ready to deploy templates or by linking an existing project with the Azion CLI.

Available Templates

Template nameUse caseDetails
Astro AudiophileE-commerceLearn more
Astro BoilerplateStarter projectLearn more
Astro Blog Starter KitBlog creationLearn more
Astro EcommerceE-commerce platformLearn more
Astro with Framework AlpineStarter projectLearn more
Astro with Framework LitStarter projectLearn more
Astro with Multiple FrameworksStarter projectLearn more
Astro with Framework PreactStarter projectLearn more
Astro with Framework ReactStarter projectLearn more
Astro with Framework SolidStarter projectLearn more
Astro with Framework SvelteStarter projectLearn more
Astro with Framework VueStarter projectLearn more
Astro MinimalStarter projectLearn more
Astro with Non-HTML PagesNon-HTML contentLearn more
Astro PortfolioPortfolio websiteLearn more
Astro QuickstoreE-commerceLearn more
Astro StarlogPoject Release notesLearn more
Astro with MarkdocStarter projectLearn more
Astro Markdown with PluginsStarter projectLearn more
Astro Markdown with ShikiCode demoLearn more
Astro with MDXStarter projectLearn more
Astro with Nano StoresE-commerceLearn more
Astro with Tailwind CSSTailwind integrationLearn more
Astro with VitestStarter projectLearn more
Cosmic - Simple Astro BlogBlogLearn more
DevscardDeveloper portfolioLearn more
Clean Astro App with SanityCMS integrationLearn more
Webpage to PDF ResumeResume generatorLearn more

Deploying a template using Azion Console

  1. Login to Console.
  2. Click the + Create button.
  3. Click the Templates section.
  4. Choose the desired Astro template.
  5. Connect your GitHub Account.
  6. Choose a name for your application.
  7. Click Deploy.

Deploying an existing project using import from GitHub

  1. In Console click the + Create button.
  2. Select Import from Github.
  3. Select your repository.
  4. Choose an application name
  5. Select the Astro Preset.
  6. Input the install command:
npm install
  1. Click Deploy

Deploying a template using Azion CLI

You can use the Azion CLI to deploy a template.

  1. Initialize the project:
Terminal window
azion init
  1. Give your project a name, or press enter to accept the given suggestion:
Terminal window
? Your application's name: (black-thor)
  1. Choose the Astro preset:
Terminal window
? Choose a preset: [Use arrows to move, type to filter]
Angular
> Astro
Docusaurus
Eleventy
Emscripten
Gatsby
Hexo
Hono
Hugo
Javascript
...
  1. Choose one of the available templates.

  2. With the template fetched and configured, you can choose to start a local development server.

Terminal window
Do you want to start a local development server? (y/N)

The following steps are based on the answer you gave:

Answering yes to local dev

  1. Install the project dependencies. Input y when the interaction prompts:
Terminal window
Do you want to install project dependencies? This may be required to start local development server (y/N)

Wait until the installation is complete.

Output:

Terminal window
Your Edge Application was built successfully
[Azion] [Server] › ✔ success Function running on port 0.0.0.0:4321, url: http://localhost:4321
  1. On the browser, go to http://localhost:4321/ and you can see your Astro project running.

Deploying the project

When your project is running locally, you’re still able to deploy it to the edge. To do so:

  1. Stop the terminal execution with control + c.

  2. Access the project folder:

Terminal window
cd [your-project-name]
  1. Deploy the project:
Terminal window
azion deploy
  1. Wait while the project is built and deployed to the Azion Web Platform.

After the deployment is complete, you’ll receive a domain to access your Astro project on the Azion’s platform.

Wait a few minutes so the propagation takes place, and then access your application using the provided domain, which should be similar to https://xxxxxxx.map.azionedge.net.

Answering no to local dev

After indicating you don’t want to have a local server running, deploy the Astro project to the edge.

  1. Enter y to the following interaction, indicating you want to deploy the project:
Terminal window
Do you want to deploy your project? (y/N)
  1. Install the project dependencies. Input y when the interaction prompts:
Terminal window
Do you want to install project dependencies? This may be required to deploy your project (y/N)
  1. Wait while the project is built and deployed to the Azion Web Platform.

After the deployment is complete, you’ll receive a domain to access your Astro project on the Azion Web Platform.

Wait a few minutes so the propagation takes place, and then access your application using the provided domain, which should be similar to https://xxxxxxx.map.azionedge.net.

Local project deploy with Azion CLI

You can use the Azion CLI to deploy a project compatible with our availiable frameworks.

  1. Inside your existing project folder, use the command below to link your project to an edge application:
Terminal window
azion link
  1. Choose the Astro preset.

  2. The CLI will guide you through the rest of the process. In less than five minutes, your application can be up and running on the Azion Web Platform.