Struktura projektu

Katalog app/, plik text.config.ts i CLI text.

Foldery w app/ definiują trasy, a pliki specjalne definiują interfejs każdej trasy.

Foldery

FolderPrzeznaczenie
appTrasy, layouty i handlery tras
libWspółdzielone moduły bez tras
publicZasoby statyczne

Pliki routingu

PlikPrzeznaczenie
layout.tsxWspólny interfejs segmentu
page.tsxEkran dostępny pod trasą
loading.tsxInterfejs zastępczy Suspense
error.tsxGranica błędów
not-found.tsxNiedopasowane adresy URL
route.tsPunkt końcowy API
app/├── layout.tsx            → shared shell├── page.tsx              → /├── sessions/│   ├── page.tsx          → /sessions│   └── [id]/page.tsx     → /sessions/:id└── api/health/route.ts   → GET /api/health

Trasy dynamiczne

FolderURLparams
[id]/sessions/42{ id: "42" }
[...slug]/docs/a/b{ slug: ["a", "b"] }

text.config.ts

text.config.tsts
import { defineConfig } from "@textjs/app";export default defineConfig({  title: "Acme",  viewport: { width: 120, height: 36, theme: "geistDark" },  hints: [{ keys: "↑ ↓", label: "count" }],});
OpcjaWartość domyślnaOpis
title""Tytuł strony i komponentu FocusPad
viewportdopasowanie do konsoli, w przeciwnym razie 120×36responsive (domyślnie true), rozmiar zastępczy width × height, theme
hints[]Dwa lub trzy klawisze wyświetlane w komponencie FocusPad na stronie
actionpress <first hint>Czynność po uzyskaniu fokusu, np. "type a prompt"
devIndicatorstrueNakładka deweloperska w konsoli ([▼])
focusHinttrue„Kliknij stronę, aby używać klawiatury” nad ostatnim wierszem konsoli, gdy strona nie ma fokusu
rewrites[]Reguły przepisywania i proxy
ansi{ cols: 80, rows: 24 }Rozmiar klatki dla curl i klientów terminalowych lub false, aby serwować im HTML

CLI

PolecenieOpis
text devSerwer deweloperski z Fast Refresh
text buildKompilacja produkcyjna
text startSerwowanie skompilowanej aplikacji i handlerów tras
text runRenderowanie aplikacji w terminalu (Terminal)
text mcpUdostępnianie aplikacji agentom programistycznym (MCP)
Edytuj tę stronę w serwisie GitHub