From 300813c682e5702f6aa92f9bbc6490563aca2496 Mon Sep 17 00:00:00 2001
From: sam edelsten <samedelsten1@gmail.com>
Date: Tue, 30 Apr 2024 17:14:28 +0100
Subject: [PATCH] add README to `lib.rs`

---
 src/lib.rs | 79 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 79 insertions(+)

diff --git a/src/lib.rs b/src/lib.rs
index 17beeed..bec8d56 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -1,3 +1,82 @@
+//! # bevy_cosmic_edit
+//!
+//! Multiline text editor using [`cosmic_text`] for the [`bevy`] game engine!
+//!
+//! This bevy plugin provides multiline text editing for bevy apps, thanks to [cosmic_text](https://github.com/pop-os/cosmic-text) crate!
+//! Emoji, ligatures, and other fancy stuff is supported!
+//!
+//! ![bevy_cosmic_edit](https://raw.githubusercontent.com/StaffEngineer/bevy_cosmic_edit/main/bevy_cosmic_edit.png)
+//!
+//! ## Usage
+//!
+//!   *Warning: This plugin is currently in early development, and its API is subject to change.*
+//!
+//! ```
+//! use bevy::prelude::*;
+//! use bevy_cosmic_edit::*;
+//!
+//! fn setup(mut commands: Commands, mut font_system: ResMut<CosmicFontSystem>) {
+//!     commands.spawn(Camera2dBundle::default());
+//!
+//!     // Text attributes
+//!     let font_size = 16.0;
+//!     let line_height = 18.0;
+//!     let attrs = Attrs::new()
+//!         .family(Family::Monospace)
+//!         .color(Color::DARK_GRAY.to_cosmic())
+//!         .weight(FontWeight::BOLD);
+//!
+//!     // Spawning
+//!     commands.spawn(CosmicEditBundle {
+//!         buffer: CosmicBuffer::new(&mut font_system, Metrics::new(font_size, line_height))
+//!             .with_text(&mut font_system, "Hello, Cosmic!", attrs),
+//!         sprite_bundle: SpriteBundle {
+//!             sprite: Sprite {
+//!                 custom_size: Some(Vec2::new(300.0, 40.0)),
+//!                 ..default()
+//!             },
+//!             ..default()
+//!         },
+//!         ..default()
+//!     });
+//! }
+//!
+//! fn main() {
+//!     App::new()
+//!         .add_plugins(DefaultPlugins)
+//!         .add_plugins(CosmicEditPlugin::default())
+//!         .add_systems(Startup, setup)
+//!         .add_systems(Update, change_active_editor_sprite)
+//!         .run();
+//! }
+//! ```
+//!
+//! Check the examples folder for much more!
+//!
+//! Native:
+//!
+//! ```shell
+//! $ cargo r --example font_per_widget
+//! ```
+//!
+//! Wasm:
+//!
+//! ```shell
+//! $ cargo install wasm-server-runner
+//! $ RUSTFLAGS=--cfg=web_sys_unstable_apis cargo r --target wasm32-unknown-unknown --example basic_ui
+//! ```
+//!
+//! ## Compatibility
+//!
+//! | bevy   | bevy_cosmic_edit |
+//! | ------ | ---------------- |
+//! | 0.13.0 | 0.16 - latest    |
+//! | 0.12.* | 0.15             |
+//! | 0.11.* | 0.8 - 0.14       |
+//!
+//! ## License
+//!
+//! MIT or Apache-2.0
 #![allow(clippy::type_complexity)]
 
 mod buffer;
-- 
GitLab