deniz.in

Markets

Weather

Loading weather

· via dev.to (home feed)

PureStack ships first public release: an MIT-licensed, TypeScript-native frontend stack

PureStack, a new MIT-licensed frontend stack, keeps content, components, styles and browser interactivity in one TypeScript system, shipping static HTML by default with client-side apps only where needed.

PureStack ships first public release: an MIT-licensed, TypeScript-native frontend stack

The first public version of PureStack, an MIT-licensed frontend stack that keeps content, components, styles and browser interactivity inside one TypeScript-oriented system, is now available on npm and GitHub. According to the announcement post on dev.to, the project was built because modern frontend work tends to bolt together a static site generator, an MDX processor, a component library, a styling system, a theme layer, a browser bundler, search tooling and editor plugins drawn from separate projects — and it asks what changes when those pieces are designed to work together.

One pipeline, from Markdown to deployed files

A PureStack project begins with a content directory holding Markdown and MDX files plus a site configuration. After installing the purestack package, npx purestack serve starts a dev server and npx purestack build produces the production output. The announcement says the tool discovers Markdown and MDX files, generates routes and navigation, renders HTML, emits theme CSS, copies assets, builds search indexes when enabled and bundles browser-side TypeScript where it is needed. The final build is ordinary static HTML, CSS, JavaScript and assets, with no required backend or hosting platform.

Static by default, interactivity by explicit opt-in

PureStack uses Regor as its native component framework, and components placed in MDX are rendered during the build. A page containing a styled panel therefore does not ship a client-side framework just to display it. When interaction is genuinely needed, it is declared rather than assumed: a page can attach a plain TypeScript file through a PageScript tag, or mount a Regor application with a RegorApp tag. The announcement demonstrates a counter that uses reactive state via ref and createApp, summing up the model as Markdown and MDX in, static HTML out, plus optional TypeScript apps mounted where interaction is required.

Components, typed CSS and shared design tokens

The release includes 67 public components and browser entry points, covering forms, buttons, tabs, modals, charts, virtual lists and tables, navigation, search and landing-page elements. Styling is treated as part of the stack rather than a separate decision: @purestack/ts-css is a typed CSS builder whose output is still standard CSS, while @purestack/ts-style adds light and dark themes, semantic tones, typography, breakpoints and design tokens shared with the component library.

Editor tooling as architecture

PureStack also ships a VS Code extension that understands its source model. According to the announcement, it provides component and prop completion, Go to Definition, frontmatter completion, Regor template highlighting, markup diagnostics and formatting inside TypeScript HTML templates — meaning markup written in template literals is treated as real markup rather than an opaque string.

The stack runs its own site

The project's website and component documentation are built with PureStack itself, using the static site generator, MDX, Regor, the component library, typed styles, themes and browser TypeScript. The author notes this forces the framework to support a real production site with live interactive examples rather than only synthetic demos.

Why it matters

The stated goal is not to argue that existing frontend tools are bad, but to test integration: what happens when the content pipeline, components, styling, static rendering, browser apps and editor tooling come from one design instead of being composed from independent projects. For developers, PureStack is a try-it-today option — a single npm install plus a content directory — that formalises a pattern many teams hand-roll anyway: static HTML for most pages, with islands of client-side TypeScript only where interaction is required. Whether an integrated stack can match the flexibility of picking best-of-breed tools for each concern remains an open question, and the author is explicitly asking for feedback on the architecture, particularly the static-by-default decision.

  • #typescript
  • #static-site-generator
  • #front-end
  • #open-source
  • #mdx

Related posts