Skip to content

Conversation

@agilgur5
Copy link
Collaborator

@agilgur5 agilgur5 commented Jun 11, 2022

Summary

Add a repro env to the issue template to get people to make more repros!

Details

  • this should help make reproductions easier as it gives a quick starting point requiring no boilerplate and is easily accessible from a browser too

  • decided to go with StackBlitz over CodeSandbox and repl.it as it's WebContainer tech allows for running Node projects entirely inside the browser (via WebAssembly)

    • meaning that unlike CodeSandbox and repl.it, their platform doesn't need to spin up and connect to a container on the backend
    • so it's much more efficient, performant, and cost-effective
    • and, importantly, it means you don't need an account to get started with a Node project; you only need an account to save your work etc
      • this makes a noticeable UX difference, since user funnels generally decrease the more steps you take (especially a larger one like creating an account)
        • and we want reproductions to be as easy as possible to create (so that people actually create them), so optimizing this flow is important
    • that being said, CodeSandbox and repl.it have much stronger OSS presences and have open-sourced most of their core technology
  • StackBlitz: https://stackblitz.com/edit/rpt2-repro

  • GitHub: https://github.com/agilgur5/rpt2-repro

    • Note that I added a README with directions there as well as in the index.ts file 🙂

References

Have already made several reproductions of issues using this environment as well, so can confirm that it works well!

- this should help make reproductions easier as it gives a quick
  starting point requiring no boilerplate and is easily accessible from
  a browser too

- decided to go with StackBlitz over CodeSandbox and repl.it as it's
  WebContainer tech allows for running Node projects entirely _inside_
  the browser (via WebAssembly)
  - meaning that unlike CodeSandbox and repl.it, their platform doesn't
    need to spin up and connect to a container on the backend
  - so it's much more efficient, performant, and cost-effective
  - and, importantly, it means you don't need an account to get started
    with a Node project; you only need an account to save your work etc
    - this makes a noticeable UX difference, since user funnels
      generally decrease the more steps you take (especially a larger
      one like creating an account)
      - and we want reproductions to be as easy as possible to create
        (so that people actually create them), so optimizing this flow
        is important
  - that being said, CodeSandbox and repl.it have much stronger OSS
    presences and have open-sourced most of their core technology
    - and Rollup and rollup/plugins use repl.it for reproductions:
      https://replit.com/@rollup/rollup-plugin-repro
    - so wanted to use those, but the UX difference was pretty
      significant
    - repl.it also didn't have as good a DX IMO

- have already made several reproductions of issues using this
  environment as well, so can confirm that it works well!

- StackBlitz: https://stackblitz.com/edit/rpt2-repro
- GitHub: https://github.com/agilgur5/rpt2-repro
@agilgur5 agilgur5 added the kind: internal Changes only affect the internals, and _not_ the public API or external-facing docs label Jun 11, 2022
@agilgur5 agilgur5 added the scope: github GH-only changes, e.g. issue and PR templates, releases, etc (not docs or CI) label Jun 11, 2022
@ezolenko ezolenko merged commit 045560c into ezolenko:master Jun 14, 2022
Repository owner locked as resolved and limited conversation to collaborators Sep 4, 2022
@agilgur5 agilgur5 deleted the github-add-repro-env branch July 2, 2023 21:27
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

kind: internal Changes only affect the internals, and _not_ the public API or external-facing docs scope: github GH-only changes, e.g. issue and PR templates, releases, etc (not docs or CI)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants