analog is a free, open source blogging & personal sites project written in TypeScript and released under MIT. It has 3,200 GitHub stars, 337 forks and 44 open issues, and was last pushed 14 hours ago. On this registry it ranks #15 of 33 tracked projects in Blogging & Personal Sites, with 5 head-to-head comparisons available. It gained 13 stars over the last 30 tracked days.

What is analog?

Analog is the fullstack meta-framework for building applications and websites with Angular, powered by Vite for development and build and by Nitro for server and deployment integrations, and it is aimed at Angular developers and teams who want the file-based routing, server routes, and hybrid rendering that frameworks such as Next.js and Nuxt provide in other ecosystems.

What it is

Analog is the meta-framework for building applications and websites with Angular. It layers conventions that Angular itself does not ship — file-based routing, integrated server and API routes, server-side data fetching, and hybrid rendering — on top of the Angular framework, so one project can serve rendered pages, static output, and backend endpoints instead of a client-only single-page application. The build and development pipeline is powered by Vite, and the repository topics confirm the scope: angular, framework, fullstack, meta-framework, nitro, router, server-side-rendering, ssr, ssg, static-site-generator, vite, web.

The concrete problem it solves is the gap between plain Angular and the batteries-included meta-frameworks available elsewhere. A plain Angular application has no opinion about routing conventions, no first-class server runtime, and no markdown-to-route path, so teams assemble those pieces themselves or adopt a framework from a different ecosystem. Analog replaces that assembly work with a single Angular-native toolchain, in the same way Next.js, Nuxt, SvelteKit, and Qwik City serve their own ecosystems.

Key capabilities

  • File-based routing driven by the filesystem, listed in the README as a first-class feature.
  • Integrated API and server routes, so backend endpoints live in the same project as the Angular application.
  • Hybrid SSR and SSG support, allowing a deployment to mix server-rendered and statically generated output.
  • Static-site-generator and server-side-rendering use cases, reflected directly in the repository topics.
  • Server and deployment integrations powered by Nitro, which supplies the server runtime and deployment targets.
  • Markdown as content routes, giving a supported path for content-oriented sites such as blogs and personal sites.
  • Builds through Vite via @analogjs/vite-plugin-angular, published to the Vite plugin registry, with support for Vitest and Storybook and for both Angular CLI and Nx workspaces.

Who uses it and how

  • Angular teams that want the meta-framework workflow — routing conventions, server routes, rendering modes — without leaving Angular for Next.js, Nuxt, SvelteKit, or Qwik City.
  • Content and publishing projects, matching the registry category, where markdown as content routes and hybrid SSG output suit blogs and personal sites.
  • Applications needing server-side data fetching alongside client rendering, deployed through Nitro's server and deployment integrations.
  • Teams working in Angular CLI or Nx workspaces, since both are explicitly supported.
  • Projects that want Vite-based builds with Vitest and Storybook testing in one toolchain, with a community of 140 contributors reachable through the Analog Discord.

Getting started

Scaffold a project with the package manager of choice — npm create analog@latest, pnpm create analog@latest, bun create analog@latest, or yarn create analog — then follow the prompts and start the development server. Documentation and an Open in StackBlitz link live at https://analogjs.org.

How it compares

The README positions Analog against Next.js, Nuxt, SvelteKit, and Qwik City as the Angular counterpart, the same class of tool with a similar experience, built on Angular rather than React, Vue, Svelte, or Qwik. Where those frameworks target their own rendering libraries, Analog is the option for a codebase already committed to Angular. It is MIT licensed, and the facts list no paid tier, hosted product, or commercial offering that it replaces.

When to use it — and when not to

Choose Analog when the project is Angular and the team wants meta-framework conventions — file-based routing, server routes, hybrid SSR and SSG — from one maintained toolchain rather than assembled in-house. Do not choose it as a general-purpose framework for non-Angular stacks, and expect to own deployment: the server and deployment pieces arrive through Nitro, so a self-hoster selects and operates that runtime rather than inheriting a managed offering. The README is mostly a feature list that defers detail to analogjs.org, and the repository carries 44 open issues, so anyone weighing it should read the documentation and the issue tracker before committing.

project readme (upstream, from github) — read inline

Analog

All Contributors

NPM Downloads Static Badge Twitter Vite Plugin Registry

Analog is the meta-framework for building applications and websites with Angular.

Similar to other meta-frameworks such as Next.JS, Nuxt, SvelteKit, Qwik City, and others, Analog provides a similar experience, building on top of Angular.

Documentation

Visit the docs at https://analogjs.org

Features

  • Powered by Vite
  • Supports Vitest/Storybook
  • Server and deployment integrations powered by Nitro
  • File-based routing
  • Server-side data fetching
  • Support for using markdown as content routes
  • Integrated API/server routes
  • Hybrid SSR/SSG support
  • Supports Angular CLI and Nx workspaces

Getting Started

Use your package manager of choice to create a new project

With npm:

npm create analog@latest

With pnpm:

pnpm create analog@latest

With Bun:

bun create analog@latest

With Yarn:

yarn create analog

Follow the prompts to scaffold the project and start the development server.

Open in StackBlitz

Partners

Sponsors

Supporting Analog

Contributing

Analog welcomes contributors! Please read the contributing doc for details.

Credits

The name was inspired by this project https://github.com/rrdelaney/Analog.

Contributors ✨

Thanks goes to these wonderful people for contributing to Analog (emoji key):

Brandon
Brandon

💻 📖 🤔
Lars Gyrup Brink Nielsen
Lars Gyrup Brink Nielsen

📖 ⚠️
Marko Stanimirović
Marko Stanimirović

🔧 🚇 📖 💻 🎨
Jason Hodges
Jason Hodges

📖
Tim Deschryver
Tim Deschryver

🚇
Dale Nguyen
Dale Nguyen

💻 🎨
Andrés Villanueva
Andrés Villanueva

📖 🌍
Umair Hafeez
Umair Hafeez

🚇
Brandon Largeau
Brandon Largeau

🚇
Maina Wycliffe
Maina Wycliffe

💻 🚇
Preston Lamb
Preston Lamb

💻 📖
Andrew Luca
Andrew Luca

💻
Chau Tran
Chau Tran

💻 🚇
Simone
Simone

💻
Kyler Johnson
Kyler Johnson

💻
Marc
Marc

📖 💻
himyjan
himyjan

💻
Alex Kovalev
Alex Kovalev

📖
Nuhman Pk
Nuhman Pk

📖
Miloš Lajtman
Miloš Lajtman

💻
profanis
profanis

💻
Reece McDonald
Reece McDonald

📖
Matteo Pietro Dazzi
Matteo Pietro Dazzi

💻
Lukáš Matta
Lukáš Matta

📖
Luciano
Luciano

📖 💻
Robin Goetz
Robin Goetz

💻
Vadim Evseev
Vadim Evseev

💻
Danny Koppenhagen
Danny Koppenhagen

📖 💻
Tomasz Flis
Tomasz Flis

📖
AdditionAddict
AdditionAddict

📖 💻
Sander
Sander

💻
Chris Perko
Chris Perko

💻 📖
Christian Lüdemann
Christian Lüdemann

💻
Yasser
Yasser

💻
Michał Dyrcz
Michał Dyrcz

💻
Otoniel Guajardo
Otoniel Guajardo

📖
gergobergo
gergobergo

💻 📖
saurajit
saurajit

📖
Mircea Rilă
Mircea Rilă

📖 🚇
Dominik
Dominik

📖 💻 🚇
Henrique Custódia
Henrique Custódia

📖
ISODA Yu
ISODA Yu

📖
Cynthia Iradukunda
Cynthia Iradukunda

📖
Drunkenpilot
Drunkenpilot

📖 💻
Jeremy Hofer
Jeremy Hofer

📖 💻 🚇
Olalekan Raheem
Olalekan Raheem

📖
Luis Castro
Luis Castro

💻 📖 🌍
Q
Q

💻 📖
Glenn Latomme
Glenn Latomme

📖
Justin Rassier
Justin Rassier

📖 💻 🚇
Matthieu Riegler
Matthieu Riegler

📖 🚇 💻
Ashley Hunter
Ashley Hunter

💻
Artur Androsovych
Artur Androsovych

💻 📖
Bjorn Lu
Bjorn Lu

🚇
Omar BELKHODJA
Omar BELKHODJA

💻
Deepak Rudra Paul
Deepak Rudra Paul

📖
Michael Avrukin
Michael Avrukin

📖
Rafael Mestre
Rafael Mestre

💻 📖 🚇
Santosh Yadav
Santosh Yadav

📖
Tenessy
Tenessy

🚇 💻 ⚠️
Jad Chahed
Jad Chahed

📖 🌍
Gesiel Rosa
Gesiel Rosa

📖 🌍
Besim Gürbüz
Besim Gürbüz

📖 🌍
Lukas Nys
Lukas Nys

📖
Andreas Ländle
Andreas Ländle

💻
Pascal Küsgen
Pascal Küsgen

📖
Alejandro Cuba Ruiz
Alejandro Cuba Ruiz

📖 🌍
Shreyas0410
Shreyas0410

📖
Denis Bendrikov
Denis Bendrikov

📖
iancharlesdouglas
iancharlesdouglas

📖
Olivier Combe
Olivier Combe

💻
Sasidharan SD
Sasidharan SD

📖
Ajit Panigrahi
Ajit Panigrahi

💻
nepage-l
nepage-l

💻
Jeff
Jeff

💻
Sammy Mohamed
Sammy Mohamed

📖
Josh Morony
Josh Morony

💻
Ilir Beqiri
Ilir Beqiri

📖
Michał Nieruchalski
Michał Nieruchalski

💻
Angel Fraga Parodi
Angel Fraga Parodi

🚇 💻
Alex
Alex

🚇 💻
Doguhan Uluca
Doguhan Uluca

📖
N. Can KIRIK
N. Can KIRIK

💻
ShPelles
ShPelles

📖
Pavan Kumar Jadda
Pavan Kumar Jadda

💻
Esther White
Esther White

💻 📖
Michael Richter
Michael Richter

💻
Rafael Triantafillidis
Rafael Triantafillidis

💻
Pooya Parsa
Pooya Parsa

📖
Corbin Crutchley
Corbin Crutchley

📖
Leblanc Meneses
Leblanc Meneses

🚇 💻 📖
James Culveyhouse
James Culveyhouse

💻
Naji
Naji

💻
Bitcollage
Bitcollage

📖
Sonu Kapoor
Sonu Kapoor

💻
ezzabuzaid
ezzabuzaid

💻
Eduardo Roth
Eduardo Roth

📖
Ryan Clements
Ryan Clements

📖
ByeongGi
ByeongGi

📖 🌍
Younes Jaaidi
Younes Jaaidi

💻 ⚠️
BoogMon
BoogMon

📖
Anthony Garera
Anthony Garera

📖
Stewan
Stewan

💻 ⚠️
Nate Radebaugh
Nate Radebaugh

💻
Wolfram Sokollek
Wolfram Sokollek

🚇
Muhammad Uzair
Muhammad Uzair

📖
Pranav Ramesh
Pranav Ramesh

📖
Ben Snyder
Ben Snyder

📖 🚇
Jan-Niklas W.
Jan-Niklas W.

📖
Sergey Gultyayev (Serhii Hultiaiev)
Sergey Gultyayev (Serhii Hultiaiev)

💻 📖
Anderson Feitosa
Anderson Feitosa

💻
Jun
Jun

📖 🌍
Felix Herold
Felix Herold

📖 🌍
Soheil Nazari [CHECK24]
Soheil Nazari [CHECK24]

📖
Maksymilian Szokalski
Maksymilian Szokalski

🚇 💻
Alfonso Andrés López Molina
Alfonso Andrés López Molina

💻 📖
Nermal
Nermal

📖
tobiasegli
tobiasegli

💻
Larson
Larson

💻
Ilyass
Ilyass

💻
Brad Bodine
Brad Bodine

📖
Kilesh Maharjan
Kilesh Maharjan

💻
Diego Jesús
Diego Jesús

💻 🚇
Rockerturner
Rockerturner

💻
Emmanuel DEMEY
Emmanuel DEMEY

📖
Nick Taylor
Nick Taylor

💻
Alex Rose-Pizant
Alex Rose-Pizant

🚇
Matt Lewis
Matt Lewis

💻
Baptiste Mahé
Baptiste Mahé

💻
Miloš Danilov
Miloš Danilov

💻
r-yanyo
r-yanyo

🚇
Nikos Anifantis
Nikos Anifantis

📖
Daichi Kudo
Daichi Kudo

💻
Roydon Gyles-Bedford
Roydon Gyles-Bedford

💻
Jordan
Jordan

🚇
Shannon Moeller 🧢
Shannon Moeller 🧢

💻
Vlad Sternbach
Vlad Sternbach

💻
Miroslav Jonaš
Miroslav Jonaš

🚇
Leosvel Pérez Espinosa
Leosvel Pérez Espinosa

🚇
Panagiotis Bakatselos
Panagiotis Bakatselos

📖
Will Stewart
Will Stewart

💻

This project follows the all-contributors specification. Contributions of any kind welcome!

Frequently asked questions

Is analog free to use?

analog is open source under the MIT licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does analog do?

The fullstack meta-framework for Angular. Powered by Vite and Nitro

What is analog written in?

analog is primarily written in TypeScript. Its source is publicly available at https://github.com/analogjs/analog, and it has 3,200 GitHub stars.