Learn Taipa from a client component to server HTML.

Start with one small component mounted in the browser. Then take the same definition to the server, keep its HTML, and attach behavior without a virtual DOM.

Basic: mount one component

Define state, bind a retained node, and mount it into an empty browser target.

Advanced: render the same component

Move the initial render to your server, then hydrate its existing DOM in place.

Forms: enhance, do not replace

Add validation and optional async submission while native fallback stays intact.

Pick a path

Path What you build Best for
Basic A browser-mounted counter Learning the component model in a few minutes
Advanced The same counter as server HTML plus hydration Integrating with a server-rendered application
Forms A validated native signup form Adding progressive enhancement without losing fallback