Orbit
A hybrid web framework written in Tish: file-based routing, markdown collections, JSX layouts, Tailwind-style utilities, SEO and client islands, with static, server or incremental rendering per route and streaming; builds for Vercel or a Node server
- BPM
- 174
- GRADE
- SS
- LEVEL
- 6
- RELEASES
- 2
- YEARS
- 2026–2026
Orbit is a hybrid web framework written in Tish. Pages are Tish files with JSX: routing follows the file tree (index.tish is /, blog/[slug].tish is /blog/:slug, docs/[...path].tish catches everything below), layouts nest by directory, content lives in markdown collections with frontmatter, and Tailwind-style utilities, SEO metadata and JSON-LD are built in.
Rendering is chosen per route. A page exports render as static (prerendered at build), server (rendered on request) or isr (cached and revalidated after a set number of seconds), and server and ISR pages can stream: the shell flushes immediately and each defer() boundary resolves out of order and swaps in place. A page's load can return props, response headers, a redirect or a not-found, and head sets the title, description and structured data. Interactive pieces are islands — separate ES modules mounted on demand (idle, visible or eager), written in JavaScript or Tish compiled to JS — and only pages that use islands ship the loader.
It builds to the Vercel Build Output API or a plain Node server, and npx @tishlang/orbit new scaffolds a site. This site is an Orbit site: every page is prerendered by Orbit and the game draws on top of it.
before this
- tish2026the language it is written in; Orbit pages, layouts and islands are Tish