Hosting for Astro in Russia

Hosting for Astro in Russia - Layero

Where to deploy Astro if the audience is in Russia? Layero - Russian hosting for Astro projects: auto-detection astro.config, static output out of the box, islands and partial hydration, content collections. Distribution - via CDN in Moscow, St. Petersburg and Yekaterinburg. Deploy from GitHub or with one command.

What Layero is doing with the Astro project

Astro is a framework for content-first sites: blogs, documentation, landing pages, portfolios. Layero fully supports his scenario: it assembles the project on the server, distributes static files from a CDN in Russia, and correctly processes islands and integrations.

Auto-detect Astro

Layero detects Astro by astro.config.mjs, astro.config.ts, astro.config.js or dependencies astro in package.json. No manual build configuration is required.

Static output out of the box

Starting astro build, folder contents dist/ is published in Object Storage and distributed via CDN. This is Astro's default script and it works completely.

Islands and partial hydration

Directives client:load, client:idle, client:visible, client:media Astro are collected into separate bundles. Layero distributes them like regular static - no restrictions.

CDN inside Russia

Points of presence - Moscow, St. Petersburg, Yekaterinburg. The Astro website opens to Russian audiences without VPN and without cross-border delays.

Opportunities for Astro projects

What is available out of the box on Layero for the project on Astro.

Feature Layero
Auto-detection astro.config.*Yes — .mjs, .ts, .js
Static output (output: 'static')Completely
Islands / partial hydrationCompletely - client:* directives
Content CollectionsCompletely - typed collections
Integrations (Tailwind/React/Vue/Svelte)Completely - at the build stage
Custom domainYes - auto-SSL by CNAME
Preview on branchesYes - for each branch and PR
Env variablesYes — PUBLIC_* available on client
AI-agent --jsonYes — npx layero@latest deploy --json

How to deploy Astro to Layero

Three steps - no need to rewrite the project.

Run deployment

In the Astro project folder, run npx layero@latest deploy —no need to install anything. Or link the GitHub repository in the panel app.layero.ru, and the build will proceed for each push.

Log in to your account

Log in by email or through Yandex. An account is created automatically when you first log in - no separate registration is needed.

Layero will collect and distribute

Layero will identify Astro by astro.config.{mjs,ts,js} and package.json, will execute astro build and distribute the contents dist/ via CDN in Russia. A custom domain is connected via CNAME - SSL will be released automatically.

What tasks is it suitable for?

Perfect

  • Blogs and personal sites on markdown/MDX
  • Product Documentation and API
  • Marketing landing pages and promotional pages
  • Portfolio and business card sites
  • Content-first projects: catalogues, guides, magazines
  • Multilingual sites with pre-rendered pages

What Layero adds

  • CDN in Moscow, St. Petersburg, Yekaterinburg - quickly for audiences in the Russian Federation
  • Preview environments for branches and pull requests
  • Custom domains with auto-SSL
  • Env variables with prefix PUBLIC_* on the client
  • AI agent deployment mode npx layero@latest deploy --json
  • Free plan, Pro - 990 ₽/month or 9,480 ₽/year in rubles, first 14 days free

Frequently asked questions

Is Astro's static output fully supported?
Yes. Static output (output: 'static', default value) is fully supported: Layero performs astro build, takes the contents of the folder dist/ and distributes it via CDN with points of presence in Moscow, St. Petersburg and Yekaterinburg. No additional configuration required.
Do Islands and partial hydration work?
Yes. Islands and partial hydration are the mechanics of Astro himself: components with client:load, client:idle, client:visible and client:media are collected into separate JS bundles at the build stage. Layero distributes these bundles as regular static files via a CDN - everything works out of the box.
Are Content Collections supported?
Yes. Content Collections is an Astro feature at the build stage: typed access to markdown/MDX content. Layero launches astro buildand all collections are rendered into static HTML pages, which are then served from the CDN.
What about server-output Astro (output: 'server')?
Static and hybrid with pre-rendered pages are fully supported - this is static. Clean server output (output: 'server') is a full-fledged SSR on Node, it requires Layero runtime mode. We recommend using output: 'hybrid' with explicit markup prerender for routes that can be served statically - this is the best balance of performance and flexibility on a CDN in the Russian Federation.
Does Astro Image component work?
Yes. Component <Image /> from @astrojs/image and built-in astro:assets optimize images at the build stage - ordinary static files (webp/avif/jpg with the required sizes) are obtained, which Layero distributes via CDN. There is no need to configure separate image services.
Integrations (Tailwind, React, Vue, Svelte) supported?
Yes. All official Astro integrations - @astrojs/tailwind, @astrojs/react, @astrojs/vue, @astrojs/svelte, @astrojs/preact, @astrojs/mdx - work at the build stage. Layero installs dependencies and runs astro build, then everything is determined by Astro itself. There are no restrictions on integrations.

Deploy Astro site in a minute

There is a free plan. Log in by email or via Yandex and publish the first Astro project on CDN in Russia.