observablehq / observablehq/notebook-kit
JSX
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 371
- Forks
- 27
- Avg merge
- 3h 52m
- Merged PRs (30d)
- 1
Description
Framework has some nice support for JSX. It’s implemented using esbuild, which is a challenge since we currently do transpilation client-side. Perhaps we could use Babel (too big?) or acorn-jsx (which is nice because we already use Acorn for everything else).
There’s also the question of whether we want the same display semantics (where calling display replaces whatever was previously displayed rather than displaying something new). That seems a little quirky in retrospect…
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with src/javascript/module.ts around lines 280-281 and trace the current client-side transpilation path. Compare the proposed Babel and acorn-jsx directions, then clarify the intended display semantics; completion requires an agreed JSX implementation and defined display behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript, typescript
- Domain
- tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100