WebREPL: En JavaScript-basert kommandolinje


torsdag 21. februar 2013 User experience JavaScript Diverse prosjekter REPL

La meg introdusere deg for et lite prosjekt jeg har begynt (og sluttet) på mange ganger i løpet av årene som har gått, men som nå endelig har resultert i noe som i alle fall virker. Si hei til WebREPL!

webrepl_logo

WebREPL er et multipurpose, HTML/JavaScript-basert terminal-interface. Det består rett og slett av et lite JavaScript som man kan inkludere i siden sin for å få en kommandolinje. Scriptet er helt "dumt", og kan ikke gjøre annet enn å ta imot input fra brukeren og sende det videre til en funksjon som man har plugget inn. Poenget var å lage noe som er gjenbrukbart, og jeg ser for meg mange potensielle brukstilfeller.

En mulighet er å bruke den som et admin-grensesnitt på en web app, og la den sende kommandoer ned til serveren for eksempel via et JSON API – det er jo enkelt. Jeg kunne også godt tenke meg å lage et tekstbasert spill igjen (jepp, jeg er old school). Eller hva med en Eliza-klone som kan hjelpe deg å debugge programmeringsutfordringer når du ikke har noen kollegaer eller gummiender tilgjengelig?

Jeg har publisert en inntil videre ganske basic online demo du kan ta en titt på (se også skjermdump nedenfor). Ellers finner du prosjektet på Github.

Det er altså ikke særlig avanserte greier dette her, men det er noe jeg har hatt lyst på lenge. Det finnes mange som har gjort det før, men de jeg har funnet er enten hardt knyttet til det bruksområdet de er laget for (f.eks. online ssh-terminal mot Linux) eller de er lite fleksible rent utseendemessig. WebREPL er ingen av delene.

WebREPL_dump

Det jeg kommer til å jobbe videre med er å lage et bedre API for å knytte opp handler-funksjoner mot terminalen. WebREPL kan for eksempel stå for mer av input-parsingen – det vil gjøre den enklere å bruke. Det er også mulig jeg vil forsøke å legge på litt mere bling-bling muligheter i brukergrensesnittet, men det kommer ikke til å bli mye.

Jeg har ikke skrevet noen dokumentasjon enda, men kilden til demoen er kanskje godt nok foreløpig? Så hvis du elsker kommandolinjen, mener musen er en håpløs oppfinnelse, og synes dette virker interessant, så må du ta en titt!


comments powered by Disqus