👉 Visit the DatoCMS homepage or see What is DatoCMS?
This example showcases an Astro Blog using DatoCMS as the data source. The purpose of this repo is to have a quick start reference that can be set up with the "one-click" button below.
Have a look at the end result live:
-
Make sure that you have set up the Github integration on Vercel.
-
Let DatoCMS set everything up for you clicking this button:
Once the setup of the project and repo is done, clone the repo locally.
In your DatoCMS' project, go to the Settings menu at the top and click API tokens.
Then click Read-only API token and copy the token.
Next, create the .env
with your API token (which will be ignored by Git):
echo ASTRO_EXAMPLE_CMS_DATOCMS_API_TOKEN=<YOUR_API_TOKEN> >> .env
npm install
npm run dev
Your blog should be up and running on http://localhost:3000!
Astro is "Zero JS, by default: No JavaScript runtime overhead to slow you down". That means that by default Astro generates static files server-side and no JS is sent to the client, unless strictly needed.
When using the <Image />
component, or any other component that requires some client-side orchestration, you must instruct Astro to send the component bundle to the client, so that the interactive features can be made available to the user. Astro uses directives: client:visible
loads and hydrates the component once the component has entered the user’s viewport.
In this demo, we use the client:visible
directive to enable the lazy load of images, that are actually loaded only when they enter the viewport.
DatoCMS is the REST & GraphQL Headless CMS for the modern web.
Trusted by over 25,000 enterprise businesses, agency partners, and individuals across the world, DatoCMS users create online content at scale from a central hub and distribute it via API. We ❤️ our developers, content editors and marketers!
Quick links:
- ⚡️ Get started with a free DatoCMS account
- 🔖 Go through the docs
- ⚙️ Get support from us and the community
- 🆕 Stay up to date on new features and fixes on the changelog
Our featured repos:
- datocms/react-datocms: React helper components for images, Structured Text rendering, and more
- datocms/js-rest-api-clients: Node and browser JavaScript clients for updating and administering your content. For frontend fetches, we recommend using our GraphQL Content Delivery API instead.
- datocms/cli: Command-line interface that includes our Contentful importer and Wordpress importer
- datocms/plugins: Example plugins we've made that extend the editor/admin dashboard
- datocms/gatsby-source-datocms: Our Gatsby source plugin to pull data from DatoCMS
- Frontend examples in different frameworks: Next.js, Vue and Nuxt, Svelte and SvelteKit, Astro, Remix. See all our starter templates.
Or see all our public repos