AstroBlogSaaSCorporate Website

parley-astro — Astro Blog Template

By agnilem

Parley is a free AI agent and SaaS website template built with Astro, MIT-licensed, featuring 22 pages, content collections, and a blog system.

Explore the design

Compare the page layouts and mobile experience. Open any screenshot for a closer look.

3 previews
Desktop homepage1 / 3
Desktop captureTop of page

Actual screenshot captured by the server browser.

All pages & views 3

Screenshots show visual appearance; interactive behavior may differ.

Recorded 2026-10-02View source

What stands out

A quick read of the recorded project description.

01

22 pages covering common site structures such as homepage, workflow, pricing, blog, terms, and waitlist

02

Uses Astro content collections to manage blog posts and recurring copy, so editing once syncs multiple display locations

03

Built-in optional Sveltia CMS admin interface, supporting local repository editing and configurable GitHub OAuth for production

04

Style system based on CSS custom properties, including color tokens, type scale, and breakpoints, with no dependency on CSS or UI frameworks

05

Animations use CSS linear() easing and automatically degrade under prefers-reduced-motion

06

MIT licensed, allowing free use, modification, commercial use, and distribution of this version of the code

Template Details

Parley is a product showcase website template for AI startups, SaaS founders, and teams, built with Astro and outputting a static site. It provides 22 routes covering the homepage, workflow, pricing, contact, blog, terms, waitlist, and 404 pages, and includes built-in content collections for managing recurring copy and data. The template uses a warm editorial style, distinguishing it from typical dark neon AI sites.

The code structure is clear: layouts are split into Base, Bare, and Head; each page section corresponds to a separate component; styles are organized via tokens.css, global.css, and pages.css; behavior modules live in the scripts directory and degrade according to prefers-reduced-motion. Blog posts are stored as Markdown and loaded through Astro's glob() collection, with index cards, related posts, and the sitemap sharing the same data source.

The template includes an optional Sveltia CMS admin interface at /admin/, which during local development can be set to "Work with Local Repository" for editing; production requires configuring a repository and a GitHub OAuth app. Form submissions depend on the PUBLIC_FORM_ENDPOINT environment variable; when unset, submissions are not sent and only a success state is shown. Vercel Analytics is enabled only when PUBLIC_VERCEL_ANALYTICS is set.

Usage limitations: the template is a demo brand, and you must connect your own forms, analytics, and services before going live; licenses for third-party assets such as demo images, fonts, and icons must be checked separately and cannot be determined solely by the code's MIT license; external services such as domains, hosting, databases, payments, or AI may incur additional costs.

AstroBlogSaaSCorporate Website

Is it right for your project?

Use Cases

  • Building product introduction and marketing pages for an AI agent or SaaS product
  • Static sites that need a blog, pricing comparison, workflow showcase, and contact form
  • Managing articles in Markdown and driving page display through content collections
  • Needing an optional lightweight CMS interface for local or remote content editing
  • Deploying to Vercel with optional Vercel Analytics and Speed Insights

Suitable For

  • Product websites for AI startups or SaaS teams
  • Astro projects that need a blog and content collections
  • Developers who prefer static output and no CSS/UI framework dependencies
  • Teams that want to use an MIT-licensed template and replace brand assets themselves

Getting started & customization

Use these recorded setup notes alongside the repository instructions for your chosen version.

  1. 1

    Run npm install to install dependencies, npm run dev to start the local development server (localhost:4321), and npm run build to generate static output to dist/

  2. 2

    Form submissions require the PUBLIC_FORM_ENDPOINT environment variable; when unset, submissions are not sent and only a success state is shown

  3. 3

    Vercel Analytics requires the PUBLIC_VERCEL_ANALYTICS environment variable; when unset, the build output does not include _vercel references

  4. 4

    The optional admin interface is at /admin/; after running npm run dev locally, open it and select "Work with Local Repository"; for production editing, set the repository in public/admin/config.yml and register a GitHub OAuth app; if not needed, you can delete public/admin/

  5. 5

    Third-party assets such as demo images, fonts, and icons must be checked against their respective licenses; the template is a demo brand, and you should connect your own forms, analytics, and services before going live

Read repository instructions

License & source material

Usage conditions & limitations

Free to use · keep license notice

This entry covers the free version under the MIT license in the public repository; the free scope is the code of this version and does not mean external services or third-party assets are free.

Must comply with when using

  • Free use, modification, commercial use, and distribution of this version of the code are permitted.
  • When distributing copies or substantial portions of the code, retain the original author's copyright notice and the full MIT license notice.
  • The code is provided as is; warranties and limitations of liability are governed by the original license and applicable law.

Additional costs & items to verify

  • The template is only a demo brand; before going live, you must connect your own forms, analytics, and other external services, and it cannot be published directly as a finished site.
  • To use CMS editing in production, you must configure a repository and register a GitHub OAuth app, involving third-party accounts and configuration.
  • Form submissions depend on the PUBLIC_FORM_ENDPOINT environment variable; when unset, submissions are not actually sent and only a success state is shown.
  • Vercel Analytics and Speed Insights are enabled only when PUBLIC_VERCEL_ANALYTICS is set; otherwise the build output does not contain related references.
  • Demo images, fonts, icons, and other third-party assets must be checked against their respective licenses and cannot be determined solely by the code's MIT license.
  • External services such as domains, hosting, databases, payments, or AI may incur additional charges.
View Original Text Basis

Permission is hereby granted, free of charge

Original License Text

Parley is a template and demonstration brand. Connect your own forms, analytics and services before launch.

Original README

For production editing, set your repo in `public/admin/config.yml` and register a GitHub OAuth app.

Original README

The contact and waitlist forms post their fields as JSON to `PUBLIC_FORM_ENDPOINT`. Leave it unset and submissions stay in the browser:

Original README

`@vercel/analytics` and `@vercel/speed-insights` mount only when `PUBLIC_VERCEL_ANALYTICS` is set

Original README
https://github.com/agnilem/parley-astro/blob/main/LICENSEhttps://github.com/agnilem/parley-astro/blob/main/README.md

Compiled by DeepSeek based on repository license and README ·2026-10-02. Results only cover the materials read; dependencies, images, fonts, and subsequent term changes are subject to their respective original texts.

Project checks & description sources

Template Information

Source platforms
Astro Themes
Documentation and maintenance reference score
More documented · 88 / 100
Technologies
Astro
Website type
Blog · SaaS · Corporate Website
How this score is calculated

Our heuristic uses license records (up to 30), a demo link (12), a preview (10), stars (15), recorded maintenance (15), description completeness (8), feature records (5) and classification data (5). It is not a code, security or performance test, or a Google score. A link does not establish tested functionality.

What to verify for this project

Repository update recorded
2026-09-29
Screenshot last checked
2026-10-02

A demo link is listed. Check it with your own content and viewport sizes; its presence does not confirm that forms, authentication or payments work.

The catalog identifies Astro as the primary stack. Check the actual dependency manifest and lockfile for versions and hosting requirements. These notes use recorded metadata, not a code audit or a deployment test.

Use a selection guide →

How this description was prepared

AI-assisted description based on catalog records and repository material. Repository authors are not automatically the reviewers of this description.

Automatically checked against source and license rules; no manual editorial review.

Inspect the recorded source material

SHA-256: c34dc4a6c4b787cd18f59fc964416e1198153c16768ef6811ff70579c2f84f43

2026-10-02T08:10:05.408Z

Source file / repository
# Parley — Astro

A modern AI agent template built on one idea: AI that works with you, not
just for you.

Parley is for AI startups, SaaS founders, and teams that want a site that
reads like a real product rather than a side project. A warm, editorial
aesthetic that stands apart from the sea of dark, neon AI sites, with the
structure to turn visitors into trials.

Free, MIT licensed.

Live: [https://parley.startfrom.co/](https://parley.startfrom.co/)

[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/new/clone?repository-url=https%3A%2F%2Fgithub.com%2Fagnilem%2Fparley-astro&project-name=parley&repository-name=parley&demo-title=Parley&demo-description=A%20warm%2C%20editorial%20AI%20agent%20and%20SaaS%20template%20built%20with%20Astro.&demo-url=https%3A%2F%2Fparley-astro.vercel.app&demo-image=https%3A%2F%2Fparley-astro.vercel.app%2Fassets%2Fog-image.jpg)

```sh
npm install
npm run dev        # localhost:4321
npm run build      # static output in dist/
```

Astro 7, `output: 'static'`, no CSS framework, no UI framework.

The artwork and logos ship with it under the same licence, though most people
will swap them for their own.

Parley is a template and demonstration brand. Connect your own forms,
analytics and services before launch.

## Deploy

Click **Deploy with Vercel** above. It clones the repo to your GitHub account
and deploys it with the Astro preset: no environment variables required.

The two optional variables, `PUBLIC_FORM_ENDPOINT` and
`PUBLIC_VERCEL_ANALYTICS`, can be added later in the project settings.

## Routes (22)

| Route | What it is |
| --- | --- |
| `/` | hero, logo strip, benefit cards, delegation tabs, testimonials, pricing, how-it-works, FAQ, integrations |
| `/workflows` | workflow index, build-your-own, before/after comparison |
| `/workflow-1` … `/workflow-3` | generated from the `workflows` group |
| `/pricing` | plan cards, billing toggle, full feature comparison table |
| `/contact` | contact methods and form |
| `/blog` | featured post, side list, card grid |
| `/blog/[slug]` | ten articles, generated from Markdown |
| `/terms-conditions` | six numbered sections |
| `/waitlist`, `/thank-you` | chromeless `Bare` layout |
| `/404` | no closing CTA |

## Structure

- `src/layouts/` — `Base.astro` (nav, closing CTA, footer, analytics gate),
  `Bare.astro` (waitlist and thank-you), `Head.astro` (meta)
- `src/components/sections/` — one component per section of the design
- `src/components/Button.astro` — port of the Framer `Buttons/button` component
- `src/content/blog/` — one Markdown file per article
- `src/content/content.json` — everything repeated: logos, benefits, features,
  testimonials, plans, FAQs, integration tiles, nav and footer links, workflow
  pages, the comparison matrix, contact methods, terms sections
- `src/styles/tokens.css` — colours, easings, the type scale, layout tokens
- `src/styles/global.css` — home page and shared chrome
- `src/styles/pages.css` — inner pages and the breakpoint overrides
- `src/scripts/` — twelve behaviour modules, one per section, wired in
  `entry.js`; each receives the `prefers-reduced-motion` flag

## Blog and CMS

Articles are Markdown with typed frontmatter, loaded through Astro's `glob()`
collection (`src/content.config.ts`). The index cards, the category-matched
related strip and the sitemap all read from the same files, so editing a post
updates every surface. The loader keeps filenames verbatim as ids, so a slug
like `parley-2.0-meet-the-new-agent-builder` survives with its dot intact.

An optional admin UI ships at `/admin/` using
[Sveltia CMS](https://sveltiacms.app): a single static page, no build
integration, no dependencies. Locally, run `npm run dev`, open `/admin/` and
choose "Work with Local Repository". For production editing, set your repo in
`public/admin/config.yml` and register a GitHub OAuth app. Don't want it?
Delete `public/admin/`.

## Forms

The contact and waitlist forms post their fields as JSON to
`PUBLIC_FORM_ENDPOINT`. Leave it unset and submissions stay in the browser:
the form shows its success state and nothing is sent.

```sh
PUBLIC_FORM_ENDPOINT=https://your-handler.example.com npm run build
```

## Analytics

`@vercel/analytics` and `@vercel/speed-insights` mount only when
`PUBLIC_VERCEL_ANALYTICS` is set, so a build without it ships zero `_vercel`
references.

```sh
npm run build                              # no beacons
PUBLIC_VERCEL_ANALYTICS=1 npm run build    # beacons
```

## Design system

Twelve colour tokens and a sixteen-step type scale as custom properties in
`tokens.css`. Breakpoints are the original's own, 1200 and 810. The type ramp
is stepped rather than fluid: H1 is 68 / 54 / 44 at weight 600.

The five spring transitions from the Framer project are integrated
numerically and emitted as CSS `linear()` easings with their real settling
times, rather than bezier approximations. The default is
`spring-duration 0.4s bounce 0.2`, the button is `spring-physics 500 60 1`,
the mobile menu `spring-physics 600 40 1`.

Every effect degrades: with `prefers-reduced-motion: reduce`, motion is
withdrawn and the layout stays intact.

## Verify

```sh
npm run build && npx astro preview
```

No console errors; no horizontal scrollbar at 1440 / 820 / 390; the hero
expands over ~500px of scroll; the delegation tabs swap on click; marquees
loop; the FAQ opens one item at a time. With reduced motion set, nothing
animates and the layout survives.
Report a correction

Explore similar templates

Compare previews and descriptions within the same stack and category.