All Projects → cometkim → rescript-ink

cometkim / rescript-ink

Licence: MIT license
ReScript bindings for Ink

Programming Languages

ReScript
86 projects

Projects that are alternatives of or similar to rescript-ink

react-flow
ReScript bindings for React Flow 🚀
Stars: ✭ 34 (-34.62%)
Mutual labels:  rescript-bindings, rescript-react
comece-aqui
🚀 Quer aprender ReScript? Comece aqui
Stars: ✭ 214 (+311.54%)
Mutual labels:  rescript-bindings, rescript-react
ancestor
💀 UI primitives for ReScript and React
Stars: ✭ 144 (+176.92%)
Mutual labels:  rescript-bindings, rescript-react
jsfiddle-github
JSFiddle implementation for interactive JavaScript examples.
Stars: ✭ 16 (-69.23%)
Mutual labels:  interactive
template
ReScript React Native template
Stars: ✭ 17 (-67.31%)
Mutual labels:  rescript-react
vector
A javascript library for creating interactive graphics.
Stars: ✭ 154 (+196.15%)
Mutual labels:  interactive
HQ
HQ/Trivia solutions from Agora
Stars: ✭ 62 (+19.23%)
Mutual labels:  interactive
React-Native-Interactive-Card
Interactive Card Component for React Native
Stars: ✭ 29 (-44.23%)
Mutual labels:  interactive
Zeitline
A polylinear timeline with clustering, centred on interactions. — Doc and demo https://octree-gva.github.io/Zeitline/
Stars: ✭ 15 (-71.15%)
Mutual labels:  interactive
Binary-Calculator-JavaScript
📱 A handy Calculator for Binary operations, that works on all Devices 📱 💻 🖥 | ⛓ https://play.google.com/store/apps/details?id=com.binarycalculator.ayidouble.binarycalculator.app ⛓
Stars: ✭ 45 (-13.46%)
Mutual labels:  interactive
bookvis
Sources of the book "Displaying time series, spatial and space-time data with R" (2nd Edition)
Stars: ✭ 52 (+0%)
Mutual labels:  interactive
mix test interactive
Interactive watch mode for Elixir's mix test. https://hexdocs.pm/mix_test_interactive/
Stars: ✭ 36 (-30.77%)
Mutual labels:  interactive
blackcrownproject
The archive of The Black Crown Project, a now-dismembered narrative web game.
Stars: ✭ 18 (-65.38%)
Mutual labels:  interactive
svelte-gantt
📆 Interactive JavaScript Gantt chart/resource booking component
Stars: ✭ 226 (+334.62%)
Mutual labels:  interactive
ibrew
🍻Interactive CLI for Homebrew – the missing package manager for macOS.
Stars: ✭ 33 (-36.54%)
Mutual labels:  interactive
reform
📋 Reasonably making forms sound good
Stars: ✭ 345 (+563.46%)
Mutual labels:  rescript-react
exocortex-halo
Various and sundry additional pieces of software I've written to incorporate into my exocortex.
Stars: ✭ 65 (+25%)
Mutual labels:  interactive
recoded
Re-coded by the School for Poetic Computation—crowdsourced recreations of early digital works using new tools
Stars: ✭ 57 (+9.62%)
Mutual labels:  interactive
rescript-date
📆 Date manipulation in ReScript.
Stars: ✭ 101 (+94.23%)
Mutual labels:  rescript-react
vue-d3-chart
A interactive chart library based on vue and d3
Stars: ✭ 38 (-26.92%)
Mutual labels:  interactive

ReScript Ink

npm license

ReScript bindings for Ink

Let's build interactive & sound CLI with React and ReScript!

Features

Core

Core:

  • render
  • ref & measureElement

Components:

  • Box
  • Text
  • Newline
  • Spacer
  • Static
  • Transform

Hooks:

  • useApp
  • useInput
  • useFocus
  • useFocusManager
  • useStdin
  • useStdout
  • useStderr

Do you find any missing APIs? Let me know!

👯 Community components bindings

Requirements

  • Ink v3.0.0 or higher
  • ReScript v9.1.0 or higher

Install

yarn add rescript-ink @rescript/react \
  # You can install additional community bindings \
  @reason-ink/ink-big-text

Add it to your bsconfig.json

  "bs-dependencies": [
+   "rescript-ink",
+   "@rescript/react",
+   "@reason-ink/ink-big-text
  ]

Example

open Ink;

// Community bindings have `InkCommunity_` prefix.
module BigText = InkCommunity_BigText;

module App = {
  @react.component
  let make = () => {
    <Box display=#flex justifyContent=#center>
      <BigText text="Hello, Reason-Ink!"/>
    </Box>
  };
};

let {waitUntilExit} = render(<App />, ~exitOnCtrlC=true, ());
waitUntilExit()->ignore;

See more in examples

Contributing

Any feedbacks & contributions are welcome!

See more details in CONTRIBUTING

License

MIT

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].