Siirry sisältöön

Kehitys

Vaatimukset

  • Bun työtilan asennuksiin ja komentosarjoihin
  • Node.js 20+
  • tmux ja cloudflared päästä päähän -testeihin
  • Daytona API-avain ja git-tunnistetiedot hiekkalaatikon integraatiotestiin (valinnainen)
  • Playwright UI-päästä päähän -testeihin

Asennus

Shell
bun install

Sovelluksen käynnistäminen

Shell
bun run dev:beam

Tämä kokoaa CLI-ohjelman, käynnistää paikallisen palvelimen porttiin 8787 (ohita arvolla TERMBRIDGE_DEV_PORT) käyttäen tmux-istuntoa codex (ohita arvolla TERMBRIDGE_DEV_SESSION) ja käynnistää Vite-kehityksen UI-palvelimen, joka välittää /__tb-liikenteen (myös WebSocket-liikenteen) kyseiselle palvelimelle. Tulosteessa näkyy kehityskäyttöön tarkoitettu lunastusURL, jonka voi avata selaimessa. Ohita CLI-koontiversio asettamalla TERMBRIDGE_SKIP_BUILD=1.

Useita istuntoja

Shell
TERMBRIDGE_SESSIONS=2 bun run dev:beam

Tai käytä pikanäppäintä:

Shell
bun run dev:beam:multi

dev:beam asettaa arvoksi TERMBRIDGE_INSECURE_COOKIE=1, ellet aseta sitä itse, joten istuntoevästeet toimivat salaamattomalla HTTP-yhteydellä. Kun suoritat CLI-ohjelman suoraan ilman HTTPS-asetusta, aseta se nimenomaisesti:

Shell
TERMBRIDGE_INSECURE_COOKIE=1 node cli/dist/bin.js --no-tunnel --public-url http://127.0.0.1:8080 --port 8080

Testit

Shell
bun run test
  • test:mocked suorittaa yksikkö- ja integraatiotestit, joiden kattavuus on 100 %.
  • test:cli suorittaa oikeat CLI- ja UI-päästä päähän -testit (tmux + cloudflared + Playwright).
  • Kohteen test:cli Daytona-hiekkalaatikkotesti lukee asetuksensa vain termbridge-test-app-hakemistossa, tämän tietovaraston vieressä olevasta .env-tiedostosta (../termbridge-test-app/.env). Testi suoritetaan, kun tiedostossa asetetaan TERMBRIDGE_E2E_DAYTONA=1 ja TERMBRIDGE_DAYTONA_API_KEY. Aseta siellä TERMBRIDGE_SANDBOX_REPO tietovarastoksi, jonka voit kloonata; oletustestitietovarasto on yksityinen ja vaatii myös asetukset TERMBRIDGE_SANDBOX_GIT_USERNAME ja TERMBRIDGE_SANDBOX_GIT_TOKEN.

Dokumentaatio

Dokumentaatio koostuu pelkistä Markdown-tiedostoista hakemistossa docs/. Jokaisella sivulla on etuosa, ja meta.json-tiedostot määrittävät navigointijärjestyksen. Dokumentaatio julkaistaan osoitteessa termbridge.dev. Tarkista se komennolla:

Shell
node scripts/check-docs-content.mjs --root docs --expected-docs 16 --expected-nav 3

Dokumentaation sisältötyönkulku suorittaa saman tarkistuksen vetopyynnöille, jotka koskevat tiedostoja docs/.