diff --git a/README.md b/README.md index 6fdd54e86..cc3296cb8 100644 --- a/README.md +++ b/README.md @@ -1,17 +1,6 @@ -This is a complete Scala.js facade for Node.js for Scala 2.12 and 2.13. +# scala-js-nodejs -## Features - -The Node.js integration is nearly complete (feature for feature), and should be more than sufficient for most web-based -and CLI applications. - -## How to use - -Add below line to your SBT project. - -```sbt -libraryDependencies += "net.exoego" %%% "scala-js-nodejs-v8" % "0.8.0" -``` +Scala.js type facades for Node.js v8 and later. ## Support matrix @@ -25,37 +14,48 @@ libraryDependencies += "net.exoego" %%% "scala-js-nodejs-v8" % "0.8.0" - :heavy_check_mark: Supported - :construction: Not supported but planned -### Supported Modules +## Supported Modules The following core Node.js modules (v8.7.0+) have been implemented: -| Node Module | Description | v10 & v12 support | -| -------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------- | -| assert | Provides a simple set of assertion tests that can be used to test invariants. | | -| buffer | The Buffer class was introduced as part of the Node.js API to make it possible to interact with octet streams in the context of things like TCP streams and file system operations. | | -| child_process | The child_process module provides the ability to spawn child processes. | | -| cluster | The cluster module allows you to easily create child processes that all share server ports. | | -| console | The `console` module provides a simple debugging console that is similar to the JavaScript console mechanism provided by web browsers. | :heavy_check_mark: | -| crypto | The crypto module provides cryptographic functionality that includes a set of wrappers for OpenSSL's hash, HMAC, cipher, decipher, sign and verify functions. | | -| dns | Support for DNS queries. | | -| events | Node.js Events Interface | | -| fs | File I/O is provided by simple wrappers around standard POSIX functions. | | -| http | Node.js HTTP Interface | | -| https | Node.js HTTPS Interface | | -| net | The net module provides you with an asynchronous network wrapper. | | -| os | Provides a few basic operating-system related utility functions. | | -| path | This module contains utilities for handling and transforming file paths. | | -| querystring | The querystring module provides utilities for parsing and formatting URL query strings. | | -| readline | Readline allows reading of a stream on a line-by-line basis. | | -| repl | The REPL provides a way to interactively run JavaScript and see the results. | | -| stream | A stream is an abstract interface implemented by various objects in Node.js. | | -| string-decoder | The string_decoder module provides an API for decoding Buffer objects into strings in a manner that preserves encoded multi-byte UTF-8 and UTF-16 characters. | | -| timers | The timer module exposes a global API for scheduling functions to be called at some future period of time. | | -| tty | The tty module provides the tty.ReadStream and tty.WriteStream classes. | | -| url | The url module provides utilities for URL resolution and parsing. | | -| util | The util module is primarily designed to support the needs of Node.js's internal APIs. | | -| vm | The vm module provides APIs for compiling and running code within V8 Virtual Machine contexts. | | -| zlib | This provides bindings to Gzip/Gunzip, Deflate/Inflate, and DeflateRaw/InflateRaw classes. | | +| Node Module | v10 & v12 support | +| ------------------------------------------------------------ | ------------------ | +| [assert](https://nodejs.org/api/assert.html) | | +| [buffer](https://nodejs.org/api/buffer.html) | :heavy_check_mark: | +| [child_process](https://nodejs.org/api/child_process.html) | | +| [cluster](https://nodejs.org/api/cluster.html) | | +| [console](https://nodejs.org/api/console.html) | :heavy_check_mark: | +| [crypto](https://nodejs.org/api/crypto.html) | | +| [dgram](https://nodejs.org/api/dgram.html) | | +| [dns](https://nodejs.org/api/dns.html) | | +| [events](https://nodejs.org/api/events.html) | | +| [fs](https://nodejs.org/api/fs.html) | | +| [http](https://nodejs.org/api/http.html) | | +| [http2](https://nodejs.org/api/http2.html) | | +| [https](https://nodejs.org/api/https.html) | | +| [net](https://nodejs.org/api/net.html) | | +| [os](https://nodejs.org/api/os.html) | | +| [path](https://nodejs.org/api/path.html) | | +| [process](https://nodejs.org/api/process.html) | | +| [querystring](https://nodejs.org/api/querystring.html) | | +| [readline](https://nodejs.org/api/readline.html) | | +| [repl](https://nodejs.org/api/repl.html) | | +| [stream](https://nodejs.org/api/stream.html) | | +| [string-decoder](https://nodejs.org/api/string_decoder.html) | | +| [timers](https://nodejs.org/api/timers.html) | | +| [tty](https://nodejs.org/api/tty.html) | | +| [url](https://nodejs.org/api/url.html) | | +| [util](https://nodejs.org/api/util.html) | | +| [vm](https://nodejs.org/api/vm.html) | | +| [zlib](https://nodejs.org/api/zlib.html) | | + +## How to use + +Add below line to your SBT project. + +```sbt +libraryDependencies += "net.exoego" %%% "scala-js-nodejs-v8" % "0.8.0" +``` ## Example of code