Proje yapısı
app/ dizini, text.config.ts ve text CLI.
app/ içindeki klasörler rotaları, özel dosyalar ise her rotanın kullanıcı arayüzünü tanımlar.
#Klasörler
| Klasör | Amaç |
|---|
app | Rotalar, layout’lar ve rota işleyicileri |
lib | Rotalanmayan ortak modüller |
public | Statik varlıklar |
#Rotalama dosyaları
| Dosya | Amaç |
|---|
layout.tsx | Bir segmentin ortak kullanıcı arayüzü |
page.tsx | Rotalanabilir bir ekran |
loading.tsx | Suspense yedek arayüzü |
error.tsx | Hata sınırı |
not-found.tsx | Eşleşmeyen URL’ler |
route.ts | API uç noktası |
app/├── layout.tsx → shared shell├── page.tsx → /├── sessions/│ ├── page.tsx → /sessions│ └── [id]/page.tsx → /sessions/:id└── api/health/route.ts → GET /api/health
#Dinamik rotalar
| Klasör | URL | params |
|---|
[id] | /sessions/42 | { id: "42" } |
[...slug] | /docs/a/b | { slug: ["a", "b"] } |
#text.config.ts
import { defineConfig } from "@textjs/app";export default defineConfig({ title: "Acme", viewport: { width: 120, height: 36, theme: "geistDark" }, hints: [{ keys: "↑ ↓", label: "count" }],});
| Seçenek | Varsayılan | Açıklama |
|---|
title | "" | Sayfa ve FocusPad başlığı |
viewport | konsola sığdırma, aksi durumda 120×36 | responsive (varsayılan true), yedek boyut width × height, theme |
hints | [] | Sayfanın FocusPad bileşeninde gösterilen iki veya üç tuş |
action | press <first hint> | Odaklandıktan sonra yapılacak işlem, ör. "type a prompt" |
devIndicators | true | Konsol içi geliştirme katmanı ([▼]) |
focusHint | true | Sayfa odakta değilken konsolun son satırının üzerinde gösterilen “Klavyeyi kullanmak için sayfaya tıklayın” metni |
rewrites | [] | Yeniden yazmalar ve proxy’ler |
ansi | { cols: 80, rows: 24 } | curl ve terminal istemcileri için kare boyutu veya bu istemcilere HTML sunmak için false |
#CLI
| Komut | Açıklama |
|---|
text dev | Fast Refresh destekli geliştirme sunucusu |
text build | Üretim derlemesi |
text start | Derlemeyi ve rota işleyicilerini sunma |
text run | Uygulamayı terminalde render etme (Terminal) |
text mcp | Uygulamayı kodlama ajanlarına sunma (MCP) |
Bu sayfayı GitHub’da düzenle