Crates
/
fission-shell
fission-shell
v0.10.0
Shared shell runtime contracts for hosting Fission applications
Install
cargo add fission-shell
Copy
Platform support
Declared by the crate author and captured when this directory was generated.
Android
Supported
iOS
Supported
Linux
Supported
macOS
Supported
Windows
Supported
Web
Supported
Terminal
Supported
Static site
Supported
Server-rendered
Supported
Package metadata
crates.io
View package
Documentation
Not provided
Repository
Open link
License
MIT
Latest version
0.10.0
Downloads
722
Last updated
2026-08-02T15:29:01.554426Z
Categories
gui
rendering
Keywords
cross-platform
fission
runtime
shell
ui-framework
Published versions
0.10.0
0.9.2
0.9.1
0.9.0
0.8.0
0.7.0
0.6.3
0.6.2
0.6.1
0.6.0
0.5.1
0.5.0
Dependencies
Dependency metadata is not indexed yet.
README

fission-shell

Shared shell abstractions for the Fission UI framework.
fission-shell defines the platform-agnostic traits and types that every Fission shell backend (desktop, web, mobile, test) implements. It provides the Platform enum for identifying the current target, the VideoBackend and VideoPlayer traits for native video playback, and theVideoSurfaceFrame struct for compositing video surfaces into the Fission layout tree.

Key types

Type / Trait
Description
Platform
Enum with variants Desktop, Web, Mobile, and Test. Used for platform-conditional logic in widgets and renderers.
VideoBackend
Trait for creating VideoPlayer instances and presenting video surface frames at their laid-out rectangles.
VideoPlayer
Trait for controlling a single video stream -- play, pause, stop, seek, volume, rate, and polling for VideoEvent updates.
VideoSurfaceFrame
Struct carrying a WidgetId, a surface_id, and a LayoutRect so the compositor knows where to place a native video surface.
VideoEvent
Enum for events emitted by a VideoPlayer: Ready { duration }, Ended, and Error(String).

Usage example

use fission_shell::{Platform, VideoBackend, VideoPlayer};

fn create_player(backend: &dyn VideoBackend) {
    let mut player = backend.create_player("https://example.com/video.mp4");
    player.play();
    // Poll for readiness
    for event in player.poll_events() {
        println!("{:?}", event);
    }
}

Status

Supported -- stable traits consumed by fission-shell-desktop, rendering backends, and the test harness.

License

MIT -- see the Fission repository for full documentation at https://fission.rs.
README

fission-shell

Shared shell abstractions for the Fission UI framework.
fission-shell defines the platform-agnostic traits and types that every Fission shell backend (desktop, web, mobile, test) implements. It provides the Platform enum for identifying the current target, the VideoBackend and VideoPlayer traits for native video playback, and theVideoSurfaceFrame struct for compositing video surfaces into the Fission layout tree.

Key types

Type / Trait
Description
Platform
Enum with variants Desktop, Web, Mobile, and Test. Used for platform-conditional logic in widgets and renderers.
VideoBackend
Trait for creating VideoPlayer instances and presenting video surface frames at their laid-out rectangles.
VideoPlayer
Trait for controlling a single video stream -- play, pause, stop, seek, volume, rate, and polling for VideoEvent updates.
VideoSurfaceFrame
Struct carrying a WidgetId, a surface_id, and a LayoutRect so the compositor knows where to place a native video surface.
VideoEvent
Enum for events emitted by a VideoPlayer: Ready { duration }, Ended, and Error(String).

Usage example

use fission_shell::{Platform, VideoBackend, VideoPlayer};

fn create_player(backend: &dyn VideoBackend) {
    let mut player = backend.create_player("https://example.com/video.mp4");
    player.play();
    // Poll for readiness
    for event in player.poll_events() {
        println!("{:?}", event);
    }
}

Status

Supported -- stable traits consumed by fission-shell-desktop, rendering backends, and the test harness.

License

MIT -- see the Fission repository for full documentation at https://fission.rs.
Package metadata
crates.io
View package
Documentation
Not provided
Repository
Open link
License
MIT
Latest version
0.10.0
Downloads
722
Last updated
2026-08-02T15:29:01.554426Z
Categories
gui
rendering
Keywords
cross-platform
fission
runtime
shell
ui-framework
Published versions
0.10.0
0.9.2
0.9.1
0.9.0
0.8.0
0.7.0
0.6.3
0.6.2
0.6.1
0.6.0
0.5.1
0.5.0
Dependencies
Dependency metadata is not indexed yet.