mirror of
https://github.com/jtdaugherty/brick.git
synced 2024-12-02 11:05:10 +03:00
Merge branch 'master' of github.com:jtdaugherty/brick
This commit is contained in:
commit
45cae4714a
33
README.md
33
README.md
@ -1,29 +1,19 @@
|
||||
![](logo/brick-final-clearbg-with-text.svg)
|
||||
|
||||
`brick` is a Haskell terminal user interface programming library in the
|
||||
style of [gloss](http://hackage.haskell.org/package/gloss). This means
|
||||
you write a function that describes how your user interface should look,
|
||||
but the library takes care of a lot of the book-keeping that so commonly
|
||||
goes into writing such programs.
|
||||
`brick` is a Haskell terminal user interface (TUI) programming toolkit.
|
||||
To use it, you write a pure function that describes how your user
|
||||
interface should look based on your current application state and you
|
||||
provide a state transformation function to handle events.
|
||||
|
||||
`brick` exposes a declarative API. Unlike most GUI toolkits which
|
||||
require you to write a long and tedious sequence of "create a widget,
|
||||
now bind an event handler", `brick` just requires you to describe your
|
||||
interface using a set of declarative combinators. Then you provide a
|
||||
function to transform your application state when input or other kinds
|
||||
of events arrive.
|
||||
interface using a set of declarative layout combinators.
|
||||
|
||||
Under the hood, this library builds upon
|
||||
[vty](http://hackage.haskell.org/package/vty), so some knowledge of Vty
|
||||
will be helpful in using this library.
|
||||
|
||||
Release Announcements / News
|
||||
----------------------------
|
||||
|
||||
Find out about `brick` releases and other news on Twitter:
|
||||
|
||||
https://twitter.com/brick_haskell/
|
||||
|
||||
Example
|
||||
-------
|
||||
|
||||
@ -71,6 +61,17 @@ at these projects:
|
||||
* `solitaire`, the card game: https://github.com/ambuc/solitaire
|
||||
* `sudoku-tui`, a Sudoku implementation: https://github.com/evanrelf/sudoku-tui
|
||||
|
||||
These third-party packages also extend `brick`:
|
||||
|
||||
* [`brick-filetree`](https://github.com/ChrisPenner/brick-filetree) [[Hackage]](http://hackage.haskell.org/package/brick-filetree) - A widget for exploring a directory tree and selecting or flagging files and directories
|
||||
|
||||
Release Announcements / News
|
||||
----------------------------
|
||||
|
||||
Find out about `brick` releases and other news on Twitter:
|
||||
|
||||
https://twitter.com/brick_haskell/
|
||||
|
||||
Getting Started
|
||||
---------------
|
||||
|
||||
@ -113,7 +114,7 @@ Feature Overview
|
||||
* Type-safe, validated input form API (see the `Brick.Forms` module)
|
||||
* A filesystem browser for file and directory selection
|
||||
* Borders can be configured to automatically connect!
|
||||
|
||||
|
||||
Brick-Users Discussion
|
||||
----------------------
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user