Start here · 0.2 beta
Getting started
Create a project with the official scaffold, then author a route as a component class. The current beta targets Node.js, pnpm 11 or newer, and the Presolve VS Code extension.
Generated projects depend on presolve, which aliases @presolve/framework. This replaces the former @presolve/core import used by 0.1 alpha projects.
1. Create the project
pnpm create presolve@0.2.0-beta.26 my-appcd my-apppnpm installpnpm 11 protects unversioned installs with a one-day minimum package age. Pinning the creator guarantees that a project made during beta.26's first day receives the release documented here; after the safety window, pnpm create presolve my-app resolves the same npm latest release.
2. Meet the route
Files below app/routes become URL routes. The root page is app/routes/index.tsx. Export a concrete class that extends Component; no component decorator is needed.
import { action, Component, state } from "presolve";export class Home extends Component {count = state(0);increment = action(() => {this.count += 1;});render() {return <button onClick={this.increment}>Count: {this.count}</button>;}}The action field preserves the method’s receiver and provides an explicit compiler boundary for this supported synchronous form.
3. Run, check, and build
pnpm devpnpm checkpnpm builddev serves compiler-published routes. check reports TypeScript and Presolve diagnostics. build emits the deterministic production publication under dist/.
4. Install editor tooling
code --install-extension fierstdev.presolve-vscodecode .Continue with the project layout, then review the beta support matrix before adopting a capability beyond components, state, actions, and structural rendering.