From a2153d3b16cb64e548c3913c06ac02e9a1a557dd Mon Sep 17 00:00:00 2001 From: PaddiM8 Date: Mon, 4 Jan 2021 20:56:12 +0100 Subject: [PATCH] Updated README files to include the new libraries and how to use kalk-component --- README.md | 15 ++++++++++---- kalk_web/README.md | 48 +++++++++++++++++++++++++++++++++++++++++++ kalk_web/preview.png | Bin 0 -> 36751 bytes 3 files changed, 59 insertions(+), 4 deletions(-) create mode 100644 kalk_web/README.md create mode 100644 kalk_web/preview.png diff --git a/README.md b/README.md index a4995cc..16f1e37 100644 --- a/README.md +++ b/README.md @@ -1,14 +1,14 @@ # kalk [![Crates.io](https://img.shields.io/crates/v/kalk_cli)](https://crates.io/crates/kalk_cli) +![npm](https://img.shields.io/npm/v/@paddim8/kalk) [![GitHub](https://img.shields.io/github/license/PaddiM8/kalk)](https://github.com/PaddiM8/kalk/blob/master/LICENSE) [![Docs.rs](https://docs.rs/kalk/badge.svg)](https://docs.rs/kalk/latest/kalk/) ![Build status](https://img.shields.io/github/workflow/status/PaddiM8/kalk/Rust?event=push&label=build%20%26%20test) -Kalk is a calculator (both program and library) that supports user-defined variables, functions, and units (experimental). -[Project kanban board (Kolan)](https://kolan.strct.net/Board/4RAdMjLDz) +Kalk is a calculator (both program and library) that supports user-defined variables, functions, and units (experimental, limited). It runs on Windows, macOS, Linux, and in web browsers (with WebAssembly). -Website: [kalk.strct.net](https://kalk.strct.net) +[Kanban](https://kolan.strct.net/Board/4RAdMjLDz) | [Website](https://kalk.strct.net) ![](example.png) @@ -25,7 +25,14 @@ Website: [kalk.strct.net](https://kalk.strct.net) * Load a file including predefined functions and constants. For example, if you're going to use Kalk for physics, you load up your file with physics functions/constants when starting Kalk. `-i file` * Misc: separate expressions by a semicolon to write them on the same line, use the `ans` variable to get the value of the previously calculated expression. -## Installing +## Libraries + +There are currently three different libraries related to kalk. +* [kalk](https://crates.io/crates/kalk): The Rust crate that powers it all. +* [@paddim8/kalk](https://www.npmjs.com/package/@paddim8/kalk): JavaScript bindings to `kalk`. This lets you use it in the browser, thanks to WebAssembly. +* [@paddim8/kalk-component](https://www.npmjs.com/package/@paddim8/kalk-component): A web component that acts as a frontend to `@paddim8/kalk`, which lets you use kalk in the browser with a command line-like interface. + +## Installation ### Binaries Pre-compiled binaries for Linux, Windows, and macOS (64-bit) are available in the [releases page](https://github.com/PaddiM8/kalk/releases). ### Compiling diff --git a/kalk_web/README.md b/kalk_web/README.md new file mode 100644 index 0000000..d0d44a2 --- /dev/null +++ b/kalk_web/README.md @@ -0,0 +1,48 @@ +# Kalk Web Component +![npm](https://img.shields.io/npm/v/@paddim8/kalk-component) +![license](https://img.shields.io/npm/l/@paddim8/kalk-component) + +A web component built with Svelte that uses kalk (WebAssembly). + +![preview](preview.png) + +## Installation & Setup + `npm install --save @paddim8/kalk-component` + +### Module +```js +import { KalkCalculator, ConsoleLine } from "@paddim8/kalk-component" +``` +If your bundler doesn't include all the files in the output folder, +you may need to eg. modify your build script to copy them over manually. +I am not aware of a better way. + +### Or only with HTML +```html + +``` + +## Usage +```html +
+ + kalk + + Type 'help' for instructions. + + +
+``` + +## Customizing +The colours in the component can be changed by using these attributes. +```html + +``` \ No newline at end of file diff --git a/kalk_web/preview.png b/kalk_web/preview.png new file mode 100644 index 0000000000000000000000000000000000000000..aab6684620c8a144b1b4034118a3515db3efd925 GIT binary patch literal 36751 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%0DUlkVwO47* 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 G&Hn;J_{@U< literal 0 HcmV?d00001