Estrutura do projeto
O diretório app/, o text.config.ts e a CLI text.
As pastas em app/ definem rotas, e arquivos especiais definem a interface de cada rota.
#Pastas
| Pasta | Finalidade |
|---|
app | Rotas, layouts e manipuladores de rota |
lib | Módulos compartilhados, sem roteamento |
public | Recursos estáticos |
#Arquivos de roteamento
| Arquivo | Finalidade |
|---|
layout.tsx | Interface compartilhada de um segmento |
page.tsx | Uma tela acessível por rota |
loading.tsx | Conteúdo alternativo do Suspense |
error.tsx | Limite de erro |
not-found.tsx | URLs sem correspondência |
route.ts | Endpoint de API |
app/├── layout.tsx → shared shell├── page.tsx → /├── sessions/│ ├── page.tsx → /sessions│ └── [id]/page.tsx → /sessions/:id└── api/health/route.ts → GET /api/health
#Rotas dinâmicas
| Pasta | 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" }],});
| Opção | Padrão | Descrição |
|---|
title | "" | Título da página e do FocusPad |
viewport | ajustado ao console, senão 120×36 | responsive (padrão true), alternativa width × height, theme |
hints | [] | Duas ou três teclas exibidas no FocusPad da página |
action | press <first hint> | O que fazer após receber o foco, por exemplo, "type a prompt" |
devIndicators | true | Sobreposição de desenvolvimento no console ([▼]) |
focusHint | true | “Clique na página para usar o teclado” sobre a última linha do console enquanto a página não está em foco |
rewrites | [] | Reescritas e proxies |
ansi | { cols: 80, rows: 24 } | Tamanho do quadro para curl e clientes de terminal, ou false para servir HTML a eles |
#CLI
| Comando | Descrição |
|---|
text dev | Servidor de desenvolvimento com Fast Refresh |
text build | Build de produção |
text start | Servir o build e os manipuladores de rota |
text run | Renderizar o app em um terminal (Terminal) |
text mcp | Servir o app a agentes de programação (MCP) |
Editar esta página no GitHub