google / google/codeworld

Better embeddable editor

Aperta
#1,248 2 commenti 0 reazioni 0 assegnatari Vedi su GitHub
discussion
Lingua principale
Haskell
Stelle
1.3k
Fork
201
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

It's possible to embed CodeWorld into an iframe in a larger page. However, it's not a great experience currently. The page loads a sidebar with currently open projects that you can swap through, auto-runs any code that's loaded into it with a new pane on the right, and cannot be controlled at all from the parent frame. We can do better.

Ideas here:

1. Have a kind of URL that loads code into JUST an editor. There should be options to disable all the extras, like the project browser, auto-run, even the Run button at all, etc. There should be an option to make it read-only if desired. Possibly there should be options to customize the styles to match the parent frame. An optional button to pop out into the full CodeWorld environment in a new tab would be nice, too.

2. Define a protocol for the CodeWorld editor to communicate with its parent. For example, the parent frame should be able to send the editor commands to scroll to a location, and highlight a range of the document. The parent should also be able to intercept the Run command so it can run the program in a different location instead of popping out from the right side of the page.

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Inizia individuando i punti di ingresso esistenti dell’iframe CodeWorld e dell’editor nel repository; l’issue non indica alcun file specifico né alcun test da eseguire. Considera le opzioni URL richieste e il protocollo di comunicazione con il frame padre come criteri di completamento, includendo il controllo della navigazione tra i progetti, dell’esecuzione automatica, di Run, della modalità di sola lettura, dello scorrimento e dell’evidenziazione degli intervalli.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
haskell
Ambito
frontend, web-dev
Tipo di issue
Funzionalità
Difficoltà
5/5
Tempo stimato
Più di una settimana
Stato di attività
Ferma
Chiarezza
Da chiarire
Idoneità per principianti
25/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.