#bevy #ascii #terminal #roguelike #tilemap

bevy_ascii_terminal

A simple terminal for rendering ascii in bevy

34 releases

0.13.0 Jul 12, 2023
0.12.4 Mar 11, 2023
0.12.3 Dec 27, 2022
0.12.1 Nov 13, 2022
0.7.4 Nov 24, 2021

#1 in #tilemap

Download history 11/week @ 2023-06-10 78/week @ 2023-06-17 71/week @ 2023-06-24 53/week @ 2023-07-01 58/week @ 2023-07-08 45/week @ 2023-07-15 49/week @ 2023-07-22 23/week @ 2023-07-29 41/week @ 2023-08-05 41/week @ 2023-08-12 66/week @ 2023-08-19 88/week @ 2023-08-26 74/week @ 2023-09-02 47/week @ 2023-09-09 36/week @ 2023-09-16 13/week @ 2023-09-23

170 downloads per month
Used in 2 crates

MIT license

135KB
2.5K SLoC

License: MIT Crates.io docs

Bevy Ascii Terminal

A simple ascii terminal integrated into bevy's ecs framework.



The goal of this crate is to provide a simple, straightforward, and hopefully fast method for rendering colorful ascii in bevy. It was made with "traditional roguelikes" in mind, but should serve as a simple UI tool if needed.

Code Example

use bevy::prelude::*;
use bevy_ascii_terminal::prelude::*;

fn setup(mut commands: Commands) {
    // Create the terminal
    let mut terminal = Terminal::new([20,3]).with_border(Border::single_line());
    // Draw a blue "Hello world!" to the terminal
    terminal.put_string([1, 1], "Hello world!".fg(Color::BLUE));

    commands.spawn((
        // Spawn the terminal bundle from our terminal
        TerminalBundle::from(terminal),
        // Automatically set up the camera to render the terminal
        AutoCamera,
    ));
}

fn main () {
    App::new()
    .add_plugins((DefaultPlugins, TerminalPlugin))
    .add_systems(Startup, setup)
    .run();
}

Versions

bevy bevy_ascii_terminal
0.11 0.13.0
0.9 0.12.1
0.8.1 0.11.1-4
0.8 0.11
0.7 0.9-0.10

Bevy Ascii Terminal Projects

Bevy Roguelike - Source - WASM

Ascii Snake - Source - WASM

Ascii Tetris - Source - WASM

Roguelike Snake Tetris

Dependencies

~27–70MB
~1M SLoC