Scully: The Static Site Generator for Angular

Discover how Scully brings the performance benefits of static sites to your Angular applications without leaving the Angular ecosystem.

What Makes Scully Different

For years, Angular developers faced a significant gap in the static site generator landscape. While frameworks like Gatsby, Hugo, and Jekyll served the broader web development community, Angular lacked a dedicated static site generation solution. Scully changed this by becoming the first SSG built specifically for Angular projects.

Native Angular Integration

Unlike other static site generators requiring new template syntax, Scully embraces Angular entirely. The tagline "just Angular" captures this philosophy perfectly. Developers add Scully using the familiar Angular CLI schematic command, integrating seamlessly within the Angular build pipeline.

Machine Learning for Route Discovery

Scully uses machine learning techniques to discover all routes automatically. Traditional SSGs require manual route configuration, but Scully analyzes the application to identify every possible route, including dynamically generated routes. This automated discovery means no maintaining separate route lists as the application evolves.

Scully's architecture recognizes that Angular applications already contain all the necessary templates and components for rendering content, making static generation a natural extension of your Angular web development codebase.

Core Features

Everything you need to generate static Angular sites

Angular CLI Integration

Add Scully with a single schematic command. No new syntax or frameworks to learn.

Plugin Architecture

Extend functionality with route plugins, data plugins, and content plugins.

Blog Support

Built-in Angular CLI schematics for blog initialization and post creation.

Auto Route Discovery

ML-powered route detection finds all application routes automatically.

Getting Started with Scully

Installation Process

Adding Scully to an Angular project begins with a single command that leverages Angular's schematic system:

ng add @scullyio/init
ng build
npm run scully

The installation integrates Scully into the existing Angular build configuration, adding necessary dependencies and configuration files without disrupting the current project structure. After installation, developers can build their Angular application normally and then run the Scully build command to generate static versions of all discovered routes.

Configuration Options

Scully provides extensive configuration through scully.config.ts:

  • Route exclusions - Specify routes that shouldn't be pre-rendered
  • Custom plugins - Define specialized content processing
  • Output structure - Control the generated file organization
  • Route-specific overrides - Apply different processing rules to different sections

The configuration supports both global settings and route-specific overrides, enabling differentiated processing for different site sections. This flexibility means developers can apply different processing rules to different sections of their site, such as using different plugins for blog posts versus documentation pages.

Netlify's technical overview highlights how Scully's pre-rendering process visits each discovered route in a headless browser environment, ensuring all Angular components render correctly. For teams implementing API-based CMS approaches, Scully provides excellent integration patterns for fetching and rendering content statically.

Scully Setup Commands
1# Install Scully in your Angular project2ng add @scullyio/init3 4# Build your Angular app5ng build6 7# Generate static site8npm run scully9 10# Create a blog11ng g @scullyio/init:blog12 13# Create a new blog post14ng g @scullyio/init:post

Performance Benefits

Page Load Speed

Static sites generated by Scully deliver significantly faster page loads. Since the server returns pre-rendered HTML rather than requiring JavaScript execution, users see content immediately. This improvement is particularly noticeable on mobile devices and in regions with slower network connections.

Static files can be served from CDN edge locations, reducing latency for users geographically distant from the origin server. No server-side processing means reduced server costs and eliminated cold start delays. These characteristics make Scully-generated sites particularly well-suited for content-heavy applications where performance directly impacts user engagement and search engine rankings.

SEO Advantages

Static HTML is immediately parseable by search engine crawlers without requiring JavaScript execution. All content, including text rendered dynamically in Angular applications, is fully accessible from the first request.

Scully's pre-rendering process also generates proper meta tags and structured data for each page. Combined with Angular's built-in SEO features, this enables fine-grained control over search result appearances. Our SEO services team can help maximize visibility for your statically generated Angular site. Social media crawlers and link preview generators also render pages correctly, improving how shared links appear across platforms like Twitter, Facebook, and LinkedIn.

SSG comparisons consistently show that static sites outperform dynamic alternatives in core web vitals, particularly Largest Contentful Paint and Time to Interactive.

Documentation Sites

Documentation benefits from Scully's fast-loading static pages. Host anywhere, from enterprise CDNs to free platforms like GitHub Pages. Consistent formatting with Angular's template syntax.

Marketing Pages

Landing pages require exceptional performance to maximize conversions. Deploy to edge networks within minutes. Full access to Angular's capabilities within static output.

Developer Blogs

Blog functionality built into Scully using Markdown with frontmatter. Posts integrate with Angular components for rich interactive examples. Version controlled alongside application code.

Scully in the Modern Static Site Landscape

Comparison with Astro

Astro has emerged as a popular multi-framework static site generator supporting React, Vue, Svelte, and Angular. While Astro offers flexibility for mixed-framework projects, Scully provides Angular-specific optimizations and integration patterns that streamline development for Angular-focused teams.

Choose Scully when:

  • Your team is committed to Angular
  • You want seamless Angular integration
  • Project simplicity is a priority

Consider Astro when:

  • Multi-framework support is needed
  • Access to Astro's extensive plugin ecosystem is important
  • Flexibility outweighs framework-specific optimizations

Angular's Evolution

Scully's release coincided with increasing interest in Jamstack architecture. While Angular Universal provides server-side rendering, Scully carved a distinct niche focused on pure static generation. This matters for projects where complete static output provides advantages over hybrid rendering, such as documentation sites, marketing pages, and developer blogs where performance and SEO are critical.

The static site generation landscape continues evolving, with new frameworks regularly emerging. Modern SSG comparisons show that Scully remains relevant for teams specifically seeking Angular-focused static generation, particularly for projects prioritizing simplicity and tight Angular ecosystem integration.

For teams building comprehensive web applications, understanding both Scully's static approach and Angular's broader rendering capabilities helps inform architectural decisions that align with project goals. Whether you need pure static generation with Scully or the hybrid capabilities of modern Angular SSR, our development team can help you choose the right approach for your specific requirements.

Frequently Asked Questions

Does Scully require learning new templating languages?

No. Scully uses existing Angular components and templates. You work with the Angular code you already know, leveraging your existing components without modification.

Can I add Scully to an existing Angular project?

Yes. Run `ng add @scullyio/init` in your Angular project, then build and run scully. It integrates without disrupting your existing structure or requiring code changes.

How does Scully handle dynamic routes?

Scully uses machine learning techniques to discover routes automatically, including dynamically generated ones. Route-specific configurations can fine-tune this process for complex applications.

What hosting options work with Scully?

Any static file hosting works. Popular options include Netlify, Vercel, Cloudflare Pages, GitHub Pages, and AWS S3 with CloudFront for enterprise deployments.

Is Scully still actively maintained?

Scully remains available for Angular teams seeking static site generation. Consider your specific requirements and Angular's official SSR capabilities when choosing your approach.

Ready to Build High-Performance Angular Sites?

Our team specializes in custom Angular development with modern deployment strategies. Let us help you achieve exceptional performance.

Sources

  1. Scully Official Site - Primary source for features, CLI commands, and documentation
  2. Jamstack.org Static Site Generators - Community-curated SSG database showing Scully as Angular-specific option
  3. Netlify Blog: Introducing Scully - Technical overview of pre-rendering and ML-based route discovery
  4. FormBold: Best Static Site Generators 2025 - Modern SSG comparison including Scully
  5. GrayGrids: Best Static Site Generators - SSG performance and feature comparison