Build apps with confidence

Typescene is a robust Web app framework made with TypeScript: strongly typed, no dependencies, no nonsense.

Why Typescene?

Typescene helps you to develop maintainable Web apps. Use this to convince your boss.

Read more ▸

How does it work?

Read this to learn more about the core components that make up a Typescene application.

Read more ▸

Guides & Docs

Browse all documentation guides, or search for detailed information on any of the API exports.

View topics ▸

New! Logo create-typescene-webapp VS Code Logo VS Code Snippets RealWorld icon RealWorld example

Typescene is independent, free, and open source. Contribute on Github.


All-inclusive, dependency-free

Typescene offers a component model that goes beyond UI rendering, and supports comprehensive state management out of the box. Other than a build chain (Webpack, Parcel, or otherwise) there are no dependencies to worry about at all.


Scales effortlessly

All it takes to get started with Typescene is a single command. From there, the intuitive object-oriented architecture makes it easy to scale up simply by adding the components you need.

Views are static representations of your UI, a tree structure of UI components either as XML (JSX) or nested JavaScript calls. Typescene provides a flexbox-inspired set of UI components and a CSS-based themeable styling system to fully ‘abstract away’ the DOM.

Activities represent the underlying application state, reflecting how the user sees your app. These provide data to views and handle input events. Each view is bound to one activity, but multiple activities can be active at the same time since they can be nested and routed independently.

Services contain data that isn’t tied to a particular activity, and provide access to the global state. Services are great for encapsulating database access, login sessions, and user preferences, so that they can be used from any other component using just their name.

Learn more about Typescene’s architecture here.


Q. Who makes Typescene? – A. Typescene is an independent open source project. It was originally started by a single developer around the same time as some of the big frameworks that are around today. After years of polishing and dog-fooding, code and tools have been made available for general use.

Q. Should I use Typescene for my next app? – A. Sure! Read the documentation and use the guides to familiarize yourself with the framework and get started.

Q. Should I use Typescene for my website or blog? – A. No, probably not. Typescene was developed for interactive applications that resemble desktop or mobile apps, not server-generated content.

Q. Can I use plain JavaScript instead of TypeScript? – A. Yes, for your own code you can stick with JavaScript (ES6+), although all of the Typescene documentation is written with TypeScript in mind.

Q. Does Typescene include a calendar / pagination / tag cloud / other UI widget? – A. Not the main package, no. The aim is to include only ‘primitive’ components, which can be combined into other components and published as separate NPM packages.

Q. Why yet another JavaScript framework…? – Typescene is genuinely different from the other options currently available in ways that actually benefit developers, with a dependency-less design that focuses on simplicity and maintainability.

Not convinced? Read more about Typescene’s design goals.