Typedora UI

Getting Started

Learn how to add type-safe components to your React project.

Introduction

Typedora UI is a next-generation extension layer for shadcn/ui, designed to bring full type-safety to your UI components.

Why Type-Safety Matters

Type-safe components catch errors at compile time, provide better autocomplete, and make refactoring safer. No more any types or runtime surprises.

Quick Start

Install a component using the shadcn CLI:

npx shadcn@latest add https://typedora-ui.netlify.app/r/typed-select.json
pnpm dlx shadcn@latest add https://typedora-ui.netlify.app/r/typed-select.json
npx shadcn@latest add https://typedora-ui.netlify.app/r/typed-select.json
bunx --bun shadcn@latest add https://typedora-ui.netlify.app/r/typed-select.json

Example

import {  } from "@/components/typed-select";

const  = [
  { : "apple", : "Apple" },
  { : "banana", : "Banana" },
  { : "orange", : "Orange" },
] as ;

<
  ={}
  ={(value) => {
value: "apple" | "banana" | "orange"
}} />

Available Components

Requirements

  • React 18+
  • A project configured with shadcn/ui
  • TypeScript (recommended)

Philosophy

Typedora UI follows these principles:

  1. Type-Safety First — Every component provides full TypeScript inference
  2. Headless by Design — Use render props for complete control over rendering
  3. shadcn Compatible — Drop-in replacements that work with your existing setup
  4. Zero Lock-in — Copy the source code, own your components

On this page