We've listened to your feedback and just added a brand new layout for desktop that makes much better use of the space available on larger screens. By default this new layout gives plenty of room for the spark you're interacting with, and you can optionally expand the new sidebar and then even open multiple panels at once. We're excited about continuing to refine the editor UI and make our panels even more powerful!
Sparks are now more likely to automatically include icons when building UI. Sparks now default to using Phosphor icons, which is a huge and varied set of icons.
And now you can control icon styling – like thin, bold, or our favorite, duotone – right from the Theme panel. We've also added the ability to quickly change fonts, and expanded the number of accent colors.
We've added a new Markdown component that sparks will now automatically use in order to easily render Markdown. This is especially nice for rendering LLM responses when called at runtime from sparks, but it's also great for little one-off utilities too!
We've created an extension for Raycast to make it even quicker to try out your ideas for new sparks. Instead of navigating to existing apps, this essentially lets you "navigate" to brand new apps that are created on demand.
Once installed, just search for the extension...
...and get to creating!
Grab the extension today at https://www.raycast.com/github-next/github-spark.
Behind-the-scenes the Raycast extension makes use of another new feature: the ability to create a new spark straight from any URL bar. Using https://spark.githubnext.com/new/<prompt>
, you can jump straight into a brand new spark. You can also specify which model to use and whether to generate variants: https://spark.githubnext.com/new/make a tic tac toe game that's lizard themed?model=sonnet&generateVariants=true
. We're curious to see what other integrations people will make using these URLs!
We've added support for more advanced web APIs in the spark runtime, including Web MIDI, Web Bluetooth, and WebUSB.
Here's a quick MIDI event viewer at https://spark.githubnext.com/share/amYNXdV3EtV6paF5LiwWA, but we're even more excited about you all will create, from custom synthesizers to interactive visualizations.
You all have been busy typing! These are the first steps we're taking to make creating and refining sparks a little smoother. First, some breathing room! In both the dashboard and the editor you can now see multiple lines of text:
And to make it easier to tweak your wording, you can go back to your previous prompt by pressing Up Arrow
in the iterate textbox.
When tweaking colors on some elements, some sparks would only look correct in light or dark mode and not have enough contrast in the other. We've now made it so sparks use adaptive color palettes by default and automatically adjust custom styled elements to light/dark mode.
This is where we fight every patch note writer's instinct to write "General system stability improvements" and call it a day. But you deserve more!
- Improved code generation reliability: we identified the most common cases causing generated code to not run on the first try. We've solved many of these, through a combination of runtime tweaks, and being even nicer to our models.
- Improved syncing reliability: some sparks were consistently failing to sync, which is now fixed.
- Save your work-in-progress prompts: we no longer clear the prompt when you switch between tabs. Can't figure out how to word your instructions until you change the theme from green to orange? Well this fix is for you!
- Fixed rendering of the "none" border radius choice: blocky elements might not be our thing, but we didn't mean to stop you! The "none" option should work much more consistently now.
Initial release at GitHub Universe 2024! 🚀