From a933ee20dac3538838c815ca7dbdd380a32a135b Mon Sep 17 00:00:00 2001 From: Tony Gorez Date: Fri, 23 Feb 2024 20:35:03 +0100 Subject: [PATCH 1/3] doc: add basic readme Signed-off-by: Tony Gorez --- README.markdown | 79 ++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 78 insertions(+), 1 deletion(-) diff --git a/README.markdown b/README.markdown index 411284b5..d3ee98c8 100644 --- a/README.markdown +++ b/README.markdown @@ -1 +1,78 @@ -![IncludeJS](./assets/banner.png) +

includejs logo

+

includejs

+

Build your own JavasScript runtime

+

+ github action build +

+ +`includejs` aims to provide an unified API to build your own JavaScript runtime. + +## Features + +- Multiple runtime support: `JavascriptCore`, `v8` (more in the furture) +- Cross platform support +- Direclty consumable from `CMake` + +> Note: These lists are not exhaustive, we'll add new items very soon. + +### JavasScript + +| Feature | JavaScriptCore | V8 | +|----------------|-------------------|------------------| +| Boolean | ✅ Supported | ❌ Not Supported | +| Number | ✅ Supported | ❌ Not Supported | +| String | ✅ Supported | ❌ Not Supported | +| Object | ✅ Supported | ❌ Not Supported | +| Array | ✅ Supported | ❌ Not Supported | +| Promise | ✅ Supported | ❌ Not Supported | +| Function | ✅ Supported | ❌ Not Supported | +| Error | ✅ Supported | ❌ Not Supported | +| Class | ❌ Not Supported | ❌ Not Supported | +| Set | ❌ Not Supported | ❌ Not Supported | +| Map | ❌ Not Supported | ❌ Not Supported | +| BigInt | ❌ Not Supported | ❌ Not Supported | +| Symbol | ❌ Not Supported | ❌ Not Supported | +| ArrayBuffer | ❌ Not Supported | ❌ Not Supported | +| TypedArray | ❌ Not Supported | ❌ Not Supported | + +### WHATWG APIs + +- [ ] Timers +- [ ] Console + +### Platform support + +| Platform | JavaScriptCore | V8 | +|-----------|-------------------|------------------| +| macOS | ✅ Supported | ✅ Supported | +| Linux | ✅ Supported | ✅ Supported | +| Windows | ❌ Not Supported | ❌ Not Supported | + +## Dependencies + +- C++ +- CMake +- JavascriptCore +- Brew (macOS) + +## Usage + +You can consume `includejs` just with CMake: + +```cmake +cmake_minimum_required(VERSION 3.18) + +project(your_runtime VERSION 0.0.1 LANGUAGES CXX) + +include(FetchContent) +FetchContent_Declare( + includejs + GIT_REPOSITORY https://github.com/crossnx/includejs + GIT_TAG main + DOWNLOAD_EXTRACT_TIMESTAMP NO) +FetchContent_MakeAvailable(includejs) + +add_executable(your_runtime main.cc) +target_link_libraries(your_runtime PRIVATE includejs::engine) +``` + From 88135550fd4f603c20d65181a22b2ae58d63091a Mon Sep 17 00:00:00 2001 From: Tony Gorez Date: Fri, 23 Feb 2024 20:36:50 +0100 Subject: [PATCH 2/3] doc: add link to the doc Signed-off-by: Tony Gorez --- README.markdown | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/README.markdown b/README.markdown index d3ee98c8..12f9eb2b 100644 --- a/README.markdown +++ b/README.markdown @@ -5,6 +5,11 @@ github action build

+

+ + 📖 Documentation +

+ `includejs` aims to provide an unified API to build your own JavaScript runtime. ## Features From 5a657ebff3a9a5dab05f9140ad7dcba3cce353cc Mon Sep 17 00:00:00 2001 From: Tony Gorez Date: Fri, 23 Feb 2024 20:42:33 +0100 Subject: [PATCH 3/3] doc: nits Signed-off-by: Tony Gorez --- README.markdown | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.markdown b/README.markdown index 12f9eb2b..75f5272a 100644 --- a/README.markdown +++ b/README.markdown @@ -10,7 +10,7 @@ 📖 Documentation

-`includejs` aims to provide an unified API to build your own JavaScript runtime. +`includejs` offers a unified API for building your own JavaScript runtime, bridging multiple engines and platforms with ease. ## Features @@ -18,7 +18,7 @@ - Cross platform support - Direclty consumable from `CMake` -> Note: These lists are not exhaustive, we'll add new items very soon. +> 🤙 Stay tuned as we continue to expand our feature set. ### JavasScript