layout | description |
---|---|
lander |
Serverless Stack (SST) is a framework that makes it easy to build serverless applications by allowing you to test your Lambda functions live. Check out our examples to get started. Or follow our step-by-step tutorials for creating full-stack apps with serverless and React.js on AWS. |
<a class="site-announcement" href="{% link _posts/2021-07-23-serverless-stack-raises-1m-to-make-it-easy-to-build-serverless-apps.md %}">
<span class="new">New</span>
<span class="copy">We raised $1M to make it easy to build serverless apps</span>
<i class="fa fa-angle-right" aria-hidden="true"></i>
</a>
<div class="site-description">
<h1 class="site-description">Making it easy to build full-stack serverless apps</h1>
<img src="/assets/lander/graphics/hero-scribble.svg" />
<img src="/assets/lander/graphics/hero-sparkle.svg" />
</div>
<h4 class="site-description-full">
Serverless Stack (SST) is an open-source serverless application platform that deploys to your AWS account, helping you go from idea to IPO.
</h4>
<div class="controls">
<a class="sst-button primary" href="{{ site.docs_url }}{{ site.docs_get_started }}">
Get Started
</a>
<a class="sst-button secondary" href="#guide">Read the Guide</a>
</div>
<div class="quick-start">
<div class="navbar">
<div class="controls">
<div class="button"></div>
<div class="button"></div>
<div class="button"></div>
</div>
</div>
<div class="code-block">
<div class="token-line">
<span class="token lead">#</span><span class="token dim">Create a new SST app</span>
</div>
<div class="token-line">
<span class="token lead">$</span> npx <span class="token keyword">create-serverless-stack</span> my-app
</div>
<div class="token-line">
<span class="token lead">$</span> cd my-app
</div>
<br />
<div class="token-line">
<span class="token lead">#</span><span class="token dim">Start Live Lambda Dev</span>
</div>
<div class="token-line">
<span class="token lead">$</span> npx <span class="token keyword">sst</span> <span class="token plain">start</span>
</div>
<br />
<div class="token-line">
<span class="token lead">#</span><span class="token dim">Open the SST Console</span>
</div>
<div class="token-line">
<span class="token lead">$</span> <span class="token">open</span> <span class="token plain">console.serverless-stack.com</span>
</div>
<br />
<div class="token-line">
<span class="token lead">#</span><span class="token dim">Deploy to prod</span>
</div>
<div class="token-line">
<span class="token lead">$</span> npx <span class="token keyword">sst</span> <span class="token plain">deploy</span> --stage prod
</div>
</div>
</div>
<div class="list">
<div class="feature live">
<img src="/assets/lander/graphics/bolt-icon.svg" />
<hr />
<h4>Live Lambda Development</h4>
<p>Work on your local Lambda functions live, without mocking or redeploying your app.</p>
</div>
<div class="columns">
<div class="feature cdk">
<img src="/assets/lander/graphics/parts-icon.svg" />
<hr />
<h4>Composable serverless constructs</h4>
<p>Higher-level CDK constructs made specifically for building serverless apps.</p>
</div>
<div class="feature console">
<img src="/assets/lander/graphics/console-icon.svg" />
<hr />
<h4>Easy to use console</h4>
<p>Manage the resources in your application with the SST Console.</p>
</div>
</div>
</div>
Quick start examples to help you build the type of Serverless Stack app you want. View all the examples
{% include lander-examples.html %}
Download the FREE 1000 page ebook
Join {{ site.stats.newsletter }} readers from the biggest companies in the world. We'll also send you updates when new versions are published.
{% include email-octopus-form.html button_copy="Download" source="home" %}
{% include reader-logos.html %}
<div class="col1">
<div class="part">
<div id="the-basics" class="header the-basics">
<h3>The Basics</h3>
<p>Build your first serverless app using AWS Lambda and React.</p>
</div>
<div class="chapters the-basics">
{% include toc-chapters.html items=site.data.chapterlist.preface id="preface" %}
{% include toc-chapters.html items=site.data.chapterlist.intro id="intro" %}
{% include toc-chapters.html items=site.data.chapterlist.setup-aws id="setup-aws" %}
{% include toc-chapters.html items=site.data.chapterlist.setup-sst id="setup-sst" %}
{% include toc-chapters.html items=site.data.chapterlist.setup-sst-backend id="setup-sst-backend" %}
{% include toc-chapters.html items=site.data.chapterlist.build-sst-api id="build-sst-api" %}
{% include toc-chapters.html items=site.data.chapterlist.add-auth-stack id="add-auth-stack" %}
{% include toc-chapters.html items=site.data.chapterlist.handling-secrets id="handling-secrets" %}
{% include toc-chapters.html items=site.data.chapterlist.unit-tests id="unit-tests" %}
{% include toc-chapters.html items=site.data.chapterlist.cors-sst id="cors-sst" %}
{% include toc-chapters.html items=site.data.chapterlist.setup-react id="setup-react" %}
{% include toc-chapters.html items=site.data.chapterlist.react-routes id="react-routes" %}
{% include toc-chapters.html items=site.data.chapterlist.setup-amplify id="setup-amplify" %}
{% include toc-chapters.html items=site.data.chapterlist.build-react id="build-react" %}
{% include toc-chapters.html items=site.data.chapterlist.secure-pages id="secure-pages" %}
{% include toc-chapters.html items=site.data.chapterlist.custom-domains id="custom-domains" %}
{% include toc-chapters.html items=site.data.chapterlist.automating-serverless-deployments id="automating-serverless-deployments" %}
{% include toc-chapters.html items=site.data.chapterlist.monitor-debug-errors id="monitor-debug-errors" %}
{% include toc-chapters.html items=site.data.chapterlist.conclusion id="conclusion" %}
<a class="expand"><span class="sst-button tertiary">Show all</span></a>
</div>
</div>
</div>
<div class="col2">
<div class="part">
<div id="best-practices" class="header best-practices">
<h3>Best Practices</h3>
<p>The best practices for running serverless apps in production.</p>
</div>
<div class="chapters best-practices">
{% include toc-chapters.html items=site.data.chapterlist.best-practices-intro id="best-practices-intro" %}
{% include toc-chapters.html items=site.data.chapterlist.organize-serverless-apps id="organize-serverless-apps" %}
{% include toc-chapters.html items=site.data.chapterlist.configure-environments id="configure-environments" %}
{% include toc-chapters.html items=site.data.chapterlist.development-lifecycle id="development-lifecycle" %}
{% include toc-chapters.html items=site.data.chapterlist.observability id="observability" %}
{% include toc-chapters.html items=site.data.chapterlist.best-practices-conclusion id="best-practices-conclusion" %}
<a class="expand"><span class="sst-button tertiary">Show all</span></a>
</div>
</div>
<div class="part">
<div id="serverless-framework" class="header serverless-framework">
<h3>Serverless Framework</h3>
<p>Building a CRUD API with Serverless Framework.</p>
</div>
<div class="chapters serverless-framework">
{% include toc-chapters.html items=site.data.chapterlist.setup-serverless id="setup-serverless" %}
{% include toc-chapters.html items=site.data.chapterlist.setup-backend id="setup-backend" %}
{% include toc-chapters.html items=site.data.chapterlist.build-api id="build-api" %}
{% include toc-chapters.html items=site.data.chapterlist.users-auth id="users-auth" %}
{% include toc-chapters.html items=site.data.chapterlist.third-party-apis id="third-party-apis" %}
{% include toc-chapters.html items=site.data.chapterlist.domains-hosting id="domains-hosting" %}
{% include toc-chapters.html items=site.data.chapterlist.infrastructure-as-code id="infrastructure-as-code" %}
<a class="expand"><span class="sst-button tertiary">Show all</span></a>
</div>
</div>
<div class="part">
<div id="extra-credit" class="header extra-credit">
<h3>Extra Credit</h3>
<p>Standalone chapters on specific topics for reference.</p>
</div>
<div class="chapters">
{% include toc-chapters.html items=site.data.chapterlist.extra-backend id="extra-backend" %}
{% include toc-chapters.html items=site.data.chapterlist.extra-auth id="extra-auth" %}
{% include toc-chapters.html items=site.data.chapterlist.extra-frontend id="extra-frontend" %}
<a class="expand"><span class="sst-button tertiary">Show all</span></a>
</div>
</div>
</div>