Skip to content

Roadmap #119

Open
Open
@nicoburns

Description

@nicoburns

Milestones

M1 (June 2025)

Initial crates.io release representing 18 months of work.

  • Support for calc() values in CSS styles.
  • object-fit and object-position properties.
  • background-size, background-position, and background-repeat properties.
  • Move DOM updating logic into blitz-dom
  • Event handling refactor
  • WGPU texture rendering (<canvas> support)

M2 (Sept 2025)

  • Grid layout: named lines and areas
  • Run WPT tests on every PR
  • Devtools: Layout inspector
  • ...and more

Backlog

Architecture

  • Split media decoding into new blitz-media crate
  • Simplify blitz-shell

Layout

Event handling

  • Mouse events
  • Scroll events
  • Touch events
    • Gesture recognition on mobile for scrolling on pan
  • Pointer events
  • Keyboard events
  • Change/Input events
  • Submit event
  • load/error/abort events
  • Composition events
  • Resize event
  • Interaction (hover/click) for inline spans
  • Event handling refactor

Browser UI

  • Nested documents (enables: browser UI, devtools, iframes, dioxus for form controls)

Devtools

  • Initial devtools protocol setup
  • Layout inspector
  • Style inspector
  • Network inspector
  • Console logger

Optimization (performance / memory usage / binary size)

  • Paint culling for non-root-viewport
  • Incremental box tree construction
  • Port resvg to fontations
  • Stop using taffy::Style
  • DOM "event presence" optimisation (bitmap?)
  • Fix known memory leaks
    • Anonymous nodes
    • Parley font names

DOM

  • Details/Summary
  • Popover API
  • <meta> refresh
  • <template> elements
  • Shadow DOM
  • Form controls
    • Password input
    • <select>
    • File input
    • Radio button
    • Checkbox
    • Text input
    • Textarea
  • <title>

Accessibility

  • Incremental updates
  • Better text input support
  • Support for aria attributes
  • Responding to events

Rendering

Dioxus Native integration

  • Integrate with CLI
  • Better event handling (prevent default, generated events)
  • Low-level access to DOM

HTML/Markdown renderer ("readme")

  • List bullets rendering
  • Checkbox rendering
  • Live reload
  • Clickable links
  • Syntax highlighting
  • Packaged/published binaries

Archived Roadmap Items

Architecture

  • Rename crates
  • Split "wrappers" out of dioxus-blitz crate

DOM

  • Non-root viewport scrolling
  • net crate for faster/async networking
  • Web font loading (needs: net crate + fontique improvements)
  • Background images (loading + rendering)
  • Text input
    • Mouse selection
    • More hotkeys
    • Multiline input

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions