Skip to content

FeatureBrainstorming.md

Noah Gibbs edited this page Dec 19, 2023 · 18 revisions

Some features are going to require a ton of infrastructure and build-up. Many of them we don't support at all yet. Some of them we won't ever support. Here's where we can dump design notes, research, early work toward them, etc. as we build in different directions.

A lot of these are based on Shoes3, but not all of them.

Packaging

  • Packaging apps to run with their own Ruby and gems - including for multiple platforms
  • Multi-File Apps - we'd like to be able to include local images and fonts, multiple source files, etc.
  • Splash App - Shoes3 showed a little interface window to run apps, package apps, etc.

Drawables and Styles

Shoes3 had a bunch of drawables we don't support. A lot seem to have been added well after the "Nobody Knows Shoes" days.

  • Shape and Mask Support - this is challenging, especially for Webview
  • Images as Slots - old Shoes let you use an image like a flow or stack and put in a bunch of drawables
  • Backgrounds, Borders, Fills, Patterns - old Shoes had a fun "pattern" type that we only partly support
  • Menubar drawable to support OS menubars
  • SVG drawable - was this even a good idea?
  • Graph/plot drawable

Bigger Persistent Apps

Old Shoes3 used to have a shared error console across multiple apps. You could use Shoes URLs to switch a window between Shoes apps. You could open multiple app windows from different Shoes apps and they could generally see each other and interact.

  • Display Server - we want to support a persistent Shoes display server, shared across multiple apps and app runs

Extra Built-In Features

Shoes3 had various interesting features included by default, like how we have Bloops.