Skip to content
Blog

SST v2

JayFebruary 27, 2023

SST v2 is ready. Here’s what’s new and how you can learn more about it.

What is SST v2

We completely rewrote SST to be simpler, faster, and easier to work with. Check out this video to get a quick sense of what SST v2 is all about.

Play

Adam and Dax also did a whole podcast on SST v2 and the rewrite process.

We also did a launch livestream where we talked about what’s new in v2, how to upgrade, and deep dive into the new codebase. We also answered some questions from the community.

Play

Upgrade to v2

In general most of the changes are ergonomic and it should be a pretty simple upgrade process. Check out our docs for the upgrade guide.


Features

Here’s a quick rundown of the major changes.

  • Monopackage

    The first major change is that we are moving to a new npm package — sst

    We are also moving to a monopackage architecture. So instead of installing @serverless-stack/cli or @serverless-stack/resources; you simply need to install sst.

    All the constructs can be imported from sst/constructs. And the Node client is under sst/node.

  • New CLI

    This new package also powers a brand new CLI. It’s faster and has a cleaner UI to go with it.

    Terminal window
    SST v2.0.38 ready!
    App: my-sst-app
    Stage: Jay
    Console: https://console.sst.dev/my-sst-app/Jay
    Deployed:
    Database
    Api
    API: https://4f574d6lqc.execute-api.us-east-1.amazonaws.com
    Web
    SITE: https://localhost:3000
  • Faster Live Lambda

    We’ve reworked how Live Lambda works! It’s a lot faster than before and it does not need to deploy any new infrastructure for it. So no more Debug Stack!

    You can read more about the changes here.

  • sst.config.ts

    We’ve also changed how you configure your SST apps. We’ve replaced the old sst.json with a sst.config.ts.

    export default {
    config(_input) {
    return {
    name: "my-sst-app",
    region: "us-east-1",
    };
    },
    stacks(app) {
    app.stack(Database).stack(Api).stack(Web);
    },
    } satisfies SSTConfig;
  • New frontends

    With SST v2, we’ve upgraded support for all the modern frontends out there. Our NextjsSite construct supports Next.js 13, thanks to our new OpenNext project.

    We also added a AstroSite construct for Astro and the SolidStartSite construct for Solid.

  • pnpm support

    SST now natively supports pnpm! Our new monorepo templates are now built to work with pnpm as well.

  • And more…

    There’s also a new cleaned up functions API, a better way to generate types, and more. For all the details check out this preview of SST v2 we did recently.

    Play

Seed also supports SST v2. So go ahead and upgrade your apps and join us on Discord if you have any questions!