Scully
The best way to build the fastest Angular apps. Scully is a static site generator for Angular projects looking to embrace the Jamstack.
- Getting Started
- Full Documentation
- Live Demo (from Dec 16, 2019)
- Contribution Guideline
What is Scully?
Scully pre-renders each page in your app to plain HTML & CSS. To do this, Scully uses guessjs to find all of the routes in your project. Scully then visits each route, rendering the view and saving it to an HTML file.
You can then ship all of those HTML files to production. Each view in your app can now be delivered to your users in just a few KBs, as opposed to the hundreds/thousands of KBs require to download your entire Angular app.
Your app appears INSTANTLY on any device (including mobile 3G).
Once the fully-rendered HTML arrives/appears on the user's view, your Angular app will then load and bootstrap on top of the existing view. This means that Scully gives you the best of both worlds:
- The ability to pre-render your entire app to the most base form of HTML & CSS.
- The ability to still have a full powered SPA written in Angular.
When your app is pre-rendered, users no longer wait until all the JavaScript has downloaded, parsed and executed before they can see and interact with your website. They can immediately begin to see and interact with the page. When your page is IMMEDIATELY available, you will have less abandoned sessions and a much higher conversion rate on your website.
This also means that you may not need to ship your backend to production. Because the view is pre-rendered and the data is fetched at build time, all views that can run without the backend in prod CAN run without the backend in prod. The security and cost implications to that fact can be mind blowing when you think about them.
For those wanting to know more about this process, please read the Getting Started guide. For those who want to know more about the theory behind pre-rendering JavaScript SPAs, our friends at Netlify wrote a free book about the Jamstack. Check that out today.
NOTE!
Please notice that with the release of Scully version 2, support for Angular versions lower as 12 is deprecated. for older versions, you can keep on using the existing 1.1.1 version, which will only receive security updates from now on.
GET A HOLD OF US 24/7
The Scully core team wants to help you any time you need us. We donβt want you to get stuck without help. To make this possible, you have the following ways to get a hold of our team:
-
The ScullyIO Gitter channel is available to the public, and you can chat questions to us in real time, one of the core team (or the community members) will be there to reply to it.
-
Each Tuesday we have Office Hours at noon MDT. You can join the entire team and ask your questions.
-
Our DMs are open on Twitter. Feel free to reach out to us on Twitter.
Core Team
Aaron Frost | Sander Elias | Jorge Cano | Andres Villanueva |
---|---|---|---|
aaronfrost | SanderElias | jorgeucano | villanuevand |
Created by
HeroDevs. LLC