Skip to content

Feat/playground#76

Open
tilucasoli wants to merge 15 commits into
btwld:mainfrom
tilucasoli:feat/playground
Open

Feat/playground#76
tilucasoli wants to merge 15 commits into
btwld:mainfrom
tilucasoli:feat/playground

Conversation

@tilucasoli
Copy link
Copy Markdown
Collaborator

No description provided.

tilucasoli and others added 15 commits May 11, 2026 23:33
Add a SeparatorColorReaction (packages/playground/lib/utils/edit_reaction.dart) that tags text nodes equal to '---' with a separator attribution. Wire the reaction into the editor pipeline and update the editor stylesheet/inlineTextStyler to apply a muted base style and a distinct separator color. Also comment out header conversion reaction to preserve raw markdown characters. Update main.dart to choose HeroThemeData.dark() or .light() based on platformBrightness so the app follows the system theme.
Add SlideConfigurationStore and rework app wiring to use Provider-based slide state; replace direct DeckController/.slides signal usage with the new store. Update main.dart to provide MemoryDeckLoader, DeckController (with base style), and SlideConfigurationStore, and move theme routing into _Theme/_Providers.

Enhance editor UX: add CustomizationSidebar, refactor TextEditor to build a SuperEditor document (preserving raw markdown markers), add richer EditReactions (separator, header, and block/key/value highlighting) and wire MemoryDeckLoader updates from the editor. Update preview and presentation pages to read slides from SlideConfigurationStore and improve SlideRenderView usage (fitted rendering and explicit text scale).

Apply API compatibility fixes in superdeck: make SlideParts header/footer nullable and merge MixScope tokens in SlideRenderView. Also small changes: MemoryDeckLoader SlideOptions parsing call updated, add devtools_options.yaml for tooling configuration.
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
Export new parsers from builder and add several playground utilities: export comment/markdown/section parsers from superdeck_builder; add .gitignore for the playground package; add edit_reaction.dart with SuperEditor reactions (header, separator and @block highlighting); add MemoryDeckLoader to parse markdown in-memory for live preview; and add TakeoverRoute for a simple fade page route. These changes enable in-editor highlighting and local markdown preview functionality for the playground.
Introduce a new `packages/playground` Flutter package (SuperDeck Studio) containing a self-contained Markdown slide editor and presenter. Adds core UI pages and features: EditorPage, PresentationPage, TextEditor, PreviewSidebar, CustomizationSidebar, ThumbnailRefresher; state stores (DeckCustomizationStore, EditorState); in-memory helpers (MemoryAssetCacheStore, MemoryDeckLoader); app entrypoint and provider wiring in main.dart; package metadata (pubspec.yaml, .metadata), docs (README.md, CONTEXT.md), web icons/manifest, and a unit test for thumbnail refresher. This commit seeds the playground with dependencies and initial implementations for live preview, thumbnail generation/coalescing, presentation routing with hero transitions, and customization-driven DeckOptions.
Wrap captured slide widget in a MixScope during slide capture so Mix tokens (including SDColors.colorMap) are available in the capture context. Also add an export for src/ui/widgets/loading_indicator.dart to the package public API and bump google_fonts dependency to ^8.1.0.
Update playground pubspec: bump mix to ^2.0.3 and set super_editor to 0.3.0-dev.49. In SlideRenderView, replace MixScope(...) with MixScope.inherit(...) to inherit/merge existing scope tokens while passing color map and child InheritedData.
Replace GestureDetector with Pressable for swatch taps and update selection visuals (use shadowOnly and change border color logic) to improve selected swatch styling. Remove Banner overlays from slide previews and use KeyedSubtree for thumbnail/fallback to simplify rendering. Reduce editor placeholder font size from 18 to 16 for tighter text spacing.
@docs-page
Copy link
Copy Markdown

docs-page Bot commented May 20, 2026

To view this pull requests documentation preview, visit the following URL:

docs.page/btwld/superdeck~76

Documentation is deployed and generated using docs.page.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants