From 4bf3a63abbae4a16a4b7b034b1b121ab2468fe2a Mon Sep 17 00:00:00 2001 From: Leandro Ostera Date: Fri, 29 Dec 2023 21:32:20 +0100 Subject: [PATCH] [new release] minttea (3 packages) (0.0.2) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit CHANGES: ## 0.0.2 #### MintTea * Add support for custom events – any Riot message sent to a Mint Tea app will become an `Event.Custom msg` event, which enables sending data into TUIs from other processes. * Add `key` type for key down events – this means we now get better discoverability of what key down events we can match on, and its easier to keep examples working * Capture more key events: arrows (left,down,up,right), backspace, space, enter, escape. * Move `initial_state` to the application start invocation – you can now run your app with multiple initial states, which makes it ideal for starting apps in the middle of other flows, or to test specific scenarios. * Fix bug where TTY was not restored from RAW mode during normal shutdown. * Now the `Event.Frame time` event includes the frame time, and all examples are updated to work with it. * Add new `Hide_cursor` and `Show_cursor` commands, and always restore the cursor to visible on exit #### Leaves * New `Leaves.Fps` to specify a frame rate and cap updates at that rate (Thanks to @sabine) * New `Leaves.Sprite` module to create frame-based animations that are ticked at a specific frame-rate (Thanks to @sabine) * New `Leaves.Spinner` contains several spinners ready to be used in applications (Thanks to @sabine) * New `Leaves.Text_input` field ready to be used in applications (Thanks to @lessp_) * New `Leaves.Cursor` that can be used to highlight where the cursor is in a given text (Thanks to @nguermond) * Reworked `Leaves.Progress` to support plain and gradient progress bars with customizable empty/full/trail characters, and to fit right into the make/update/view pattern. #### Spices * Implemented support for gradients between two RGB colors #### Examples * New Spinners example showcasing several spinners (Thanks to @sabine) * New Emojis game example showcasing a tilemap and moving a player around * New Basic example for the README tutorial * New Progress bars examples showcasing plain, gradient, and emoji progress bars * New Text input field example (Thanks to @lessp_) * Updated other examples to use the new progress bars #### Docs * New tutorial starting from zero and building a small shopping list app (Thanks to @metame) ## 0.0.1 Initial release for the 3 packages. #### MintTea * Let people create TUI apps using The-Elm-Architecture * Introduce basic events for KeyDown, Frame, and Timers * Introduce basic commands for setting timers, entering/exiting the AltScreen, exiting, and sequencing commands #### Examples * Add `views` example showcasing an application with multiples sections * Add `altscreen-toggle` example to showcase the AltScreen * Add `fullscreen` example with a timer * Add `stopwatch` example * Add `fps` counter example #### Spices * Introduce `color` and `style` * Support basic styles (bold, italic, underscore, etc) and layouting (padding) #### Leaves * Add a Checkbox leaf * Add a Progress bar leaf --- packages/leaves/leaves.0.0.2/opam | 42 +++++++++++++++++++++++++++ packages/minttea/minttea.0.0.2/opam | 42 +++++++++++++++++++++++++++ packages/spices/spices.0.0.2/opam | 44 +++++++++++++++++++++++++++++ 3 files changed, 128 insertions(+) create mode 100644 packages/leaves/leaves.0.0.2/opam create mode 100644 packages/minttea/minttea.0.0.2/opam create mode 100644 packages/spices/spices.0.0.2/opam diff --git a/packages/leaves/leaves.0.0.2/opam b/packages/leaves/leaves.0.0.2/opam new file mode 100644 index 000000000000..f6f0325ecc28 --- /dev/null +++ b/packages/leaves/leaves.0.0.2/opam @@ -0,0 +1,42 @@ +opam-version: "2.0" +synopsis: "A collection of reusable components from Mint Tea" +description: + "Leaves is a collection of reusable components for writing TUI applications with Mint Tea" +maintainer: ["Leandro Ostera "] +authors: ["Leandro Ostera "] +license: "MIT" +tags: ["tui" "terminal-ui" "apps" "components" "component" "library"] +homepage: "https://github.com/leostera/minttea" +bug-reports: "https://github.com/leostera/minttea/issues" +depends: [ + "dune" {>= "3.11"} + "ocaml" {>= "5.1"} + "minttea" {= version} + "mdx" {with-test & >= "2.3.1"} + "spices" {= version} + "odoc" {with-doc} +] +build: [ + ["dune" "subst"] {dev} + [ + "dune" + "build" + "-p" + name + "-j" + jobs + "@install" + "@runtest" {with-test} + "@doc" {with-doc} + ] +] +dev-repo: "git+https://github.com/leostera/minttea.git" +url { + src: + "https://github.com/leostera/minttea/releases/download/0.0.2/minttea-0.0.2.tbz" + checksum: [ + "sha256=d1e07b3aec5c3ddbfd6dfd9a21011e8abe389907f1e56d80263ed56f8a46b4b2" + "sha512=f7550e05e0e3b61cd3134469368d65f96d89b529e45d6938fd89949390fb14ed8732a02e6ef350fcd8507fa8a1ad393ae29a24b994dbe26917a2c3d879e25698" + ] +} +x-commit-hash: "1bc14017f6f45c7edc16c17cd1084195ea6cbad7" diff --git a/packages/minttea/minttea.0.0.2/opam b/packages/minttea/minttea.0.0.2/opam new file mode 100644 index 000000000000..794382636270 --- /dev/null +++ b/packages/minttea/minttea.0.0.2/opam @@ -0,0 +1,42 @@ +opam-version: "2.0" +synopsis: + "A fun, functional, and stateful way to build terminal apps in OCaml heavily inspired by Go's BubbleTea" +description: "A longer description" +maintainer: ["Leandro Ostera "] +authors: ["Leandro Ostera "] +license: "MIT" +tags: ["tui" "terminal-ui" "framework" "riot"] +homepage: "https://github.com/leostera/minttea" +bug-reports: "https://github.com/leostera/minttea/issues" +depends: [ + "dune" {>= "3.11"} + "ocaml" {>= "5.1"} + "riot" {>= "0.0.5"} + "mdx" {with-test & >= "2.3.1"} + "tty" {>= "0.0.2"} + "odoc" {with-doc} +] +build: [ + ["dune" "subst"] {dev} + [ + "dune" + "build" + "-p" + name + "-j" + jobs + "@install" + "@runtest" {with-test} + "@doc" {with-doc} + ] +] +dev-repo: "git+https://github.com/leostera/minttea.git" +url { + src: + "https://github.com/leostera/minttea/releases/download/0.0.2/minttea-0.0.2.tbz" + checksum: [ + "sha256=d1e07b3aec5c3ddbfd6dfd9a21011e8abe389907f1e56d80263ed56f8a46b4b2" + "sha512=f7550e05e0e3b61cd3134469368d65f96d89b529e45d6938fd89949390fb14ed8732a02e6ef350fcd8507fa8a1ad393ae29a24b994dbe26917a2c3d879e25698" + ] +} +x-commit-hash: "1bc14017f6f45c7edc16c17cd1084195ea6cbad7" diff --git a/packages/spices/spices.0.0.2/opam b/packages/spices/spices.0.0.2/opam new file mode 100644 index 000000000000..1c36a3261926 --- /dev/null +++ b/packages/spices/spices.0.0.2/opam @@ -0,0 +1,44 @@ +opam-version: "2.0" +synopsis: "Declarative styles for TUI applications" +description: + "Spices lets you create style definitions for TUIs and provide handy renderers for strings over them" +maintainer: ["Leandro Ostera "] +authors: ["Leandro Ostera "] +license: "MIT" +tags: [ + "styling" "styles" "declarative" "framework" "tui" "terminal-ui" "apps" +] +homepage: "https://github.com/leostera/minttea" +bug-reports: "https://github.com/leostera/minttea/issues" +depends: [ + "dune" {>= "3.11"} + "ocaml" {>= "5.1"} + "colors" {>= "0.0.1"} + "mdx" {with-test & >= "2.3.1"} + "tty" {>= "0.0.2"} + "odoc" {with-doc} +] +build: [ + ["dune" "subst"] {dev} + [ + "dune" + "build" + "-p" + name + "-j" + jobs + "@install" + "@runtest" {with-test} + "@doc" {with-doc} + ] +] +dev-repo: "git+https://github.com/leostera/minttea.git" +url { + src: + "https://github.com/leostera/minttea/releases/download/0.0.2/minttea-0.0.2.tbz" + checksum: [ + "sha256=d1e07b3aec5c3ddbfd6dfd9a21011e8abe389907f1e56d80263ed56f8a46b4b2" + "sha512=f7550e05e0e3b61cd3134469368d65f96d89b529e45d6938fd89949390fb14ed8732a02e6ef350fcd8507fa8a1ad393ae29a24b994dbe26917a2c3d879e25698" + ] +} +x-commit-hash: "1bc14017f6f45c7edc16c17cd1084195ea6cbad7"