Text.js to framework React do aplikacji renderowanych w konsoli przeglądarki.
Dokumentacja · Nauka · Playground · OpenCode
English · Bahasa Indonesia · Deutsch · Español · Français · Italiano · Polski · Português (Brasil) · Tiếng Việt · Türkçe · Русский · हिन्दी · 日本語 · 한국어 · 简体中文 · 繁體中文 · العربية · עברית · فارسی · اردو
bunx create-text-app@latest
cd my-app && bun install && bun devOtwórz localhost:3000 i otwórz konsolę przeglądarki. Text.js wymaga środowiska Bun 1.2+ lub Node.js 22+ oraz przeglądarki Chrome, Edge, Firefox lub Safari na komputerze.
// app/page.tsx
import { useState } from "react";
import { Box, Text, useInput } from "@textjs/app";
export default function Page() {
const [count, setCount] = useState(0);
useInput((e) => {
if (e.key === "up") setCount((c) => c + 1);
if (e.key === "down") setCount((c) => c - 1);
});
return (
<Box className="flex-col border rounded p-1">
<Text bold>▼ Hello, console</Text>
<Text color="muted">count = {count}</Text>
</Box>
);
}Layout każdej klatki jest obliczany przez Yoga, kodowany metodą długości serii do spanów %c i wypisywany jednym wywołaniem console.log. Klatka bez zmienionych komórek niczego nie wypisuje. Plik ARCHITECTURE.md opisuje potok renderowania.
| Pakiet | Wersja | Opis |
|---|---|---|
@textjs/app |
App Router, CLI text i handlery tras |
|
@textjs/react |
Reconciler, komponenty i hooki | |
@textjs/core |
Bufor komórek, layout i sterownik konsoli %c |
|
@textjs/font |
Parser i renderer fontów FIGlet | |
@textjs/opencode |
Lokalny most między textjs.org/opencode a serwerem OpenCode | |
create-text-app |
Generator projektów | |
eslint-plugin-textjs |
Reguły ESLint dla aplikacji Text.js |
Tutaj znajdują się też rozszerzenia edytora i przeglądarki:
packages/vscode-textjs: rozszerzenie VS Code z podglądem na żywo, generowaniem szkieletu App Router i linkami do kodów błędówpackages/devtools-extension: rozszerzenie Chrome DevTools z drzewem komponentów, inspektorem klatek i osią czasu
bun install
bun test packages/
bun run typecheck
bun run --cwd apps/web devStrona działa pod adresem localhost:3000. Plik CONTRIBUTING.md opisuje pozostałe aplikacje, skrypty end-to-end i proces wydawania wersji.
Zgłoszenia błędów i pull requesty są mile widziane. Najpierw przeczytaj CONTRIBUTING.md, a problemy z bezpieczeństwem zgłaszaj zgodnie z opisem w SECURITY.md.
MIT. Dołączone pliki innych autorów zachowują własne licencje: fonty FIGlet w packages/font (BSD 3-Clause) oraz fonty w apps/web i merch/fonts (SIL Open Font License 1.1).