DartPad is a free, open-source online editor to help developers learn about Dart and Flutter. You can access it at dartpad.dev.
What is it? What does it do?
DartPad began as an online playground for the Dart language built by the Dart tools team in 2015. It compiles, analyzes, and displays the results of its users' Dart code, and can be embedded in other websites as an iframe.
In Dec 2019, we launched a new version of DartPad (dartpad.dev) with a fresh new look-and-feel and support for the popular Flutter UI toolkit. To learn more about the new DartPad, please check this blog post. Interested in embedding DartPad in your websites? Check out this embedding guide.
See the dart-services repo for the implementation of the backend service that powers compilation for DartPad.
How did we build DartPad?
Interested in the tools we used to build DartPad? We used Material components for the web UI via package:mdc_web, and Dart for the backend services to run compilation. We put together some documentation about the hosted services - continuous integration, code coverage, and cross-browser testing that we used to build DartPad.
Issues and bugs
Please file reports on the GitHub Issue Tracker.
Bug triage priorities
Each issue in the tracker will be assigned a priority based on the impact to users when the issue appears and the number of users impacted (widespread or rare).
Some examples of likely triage priorities:
- Broken internal/external navigation links within DartPad
- App is down / not loading
- Interface bugs preventing all or almost all uses of the application
- Unable to compile or analyze valid Flutter/Dart code (widespread and/or with error messages that aren't retryable)
- Unable to compile or analyze valid Flutter/Dart code in edge cases only, and/or retryable
- Incorrect or not up-to-date warning information for invalid Flutter/Dart code (widespread)
- Interface bugs interfering with common uses of the application, widespread
- Enhancements that have significant data around them indicating they are a big win
- User performance problem (e.g. app loading / run / analysis), widespread
- Incorrect or not up-to-date warning information for invalid Flutter/Dart code (edge cases / not widespread)
- Interface bugs interfering with the use of the application in edge cases.
- User interface and display warts that are not significantly impacting functionality, widespread
- Enhancements that are agreed to be a good idea even if they don't have data around them indicating they are a big win
- User performance problem (e.g. app loading / run analysis), edge cases / not widespread
- Minor user interface warts not significantly impacting functionality, on edge cases only.
- Enhancements that are speculative or where we are unsure of impacts/tradeoffs