- Notifications
You must be signed in to change notification settings - Fork3
Create and share easy-to-make, built-to-last, innovative, and customizable experiences
License
Atom-54/xenonjs
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
XenonJs implements a user-sovereign, AI-powered, semantic framework, and an ecosystem of durable, interoperable components.
Whether you are prototyping an experiment, or building a production ready customer facing product -
XenonJs is suitable for you.
Whether you are building from scratch, or looking to expand functionality of an existing project -
XenonJs is suitable for you.
Whether you are a software guru, or have no coding experience at all -
XenonJs is suitable for you.
"A picture is worth a thousand words", but a video has 24 frames per second, so every one minute of a video is worth one million and fourty four hundreds of thousands of words. Watch our demos at:XenonJs demos.
XenonJs features 2 applications:
Run
: an application that allows you to run any XenonJs experience (aka Graph) in a browserBuild
: an web-based IDE that lets you compose XenonJs experiences (aka Graphs)
To get started, try using our demo XenonJs Graphs:
More demo Graphs can be found on our website:xenonjs.com
You can also build your very own XenonJs Graphs from the collection of XenonJs Nodes:
- Try out theBuild IDE
- Here is a guide on how to use it:Build README
The Graphs you compose inBuild
are immediately accessible in theRun
application.
To run a specific graph, pass its name as URL parameter to theRun
app:
By default the Graphs you construct inBuild
are persisted in your browser's local storage. You can access a locally stored Graph at:
Graphs are constructed from XenonJs Nodes or other Graphs. The XenonJs Nodes and Graphs form an emerging constantly growing ecosystem of components and you can easily compose graph from our off-the-shelf components.More detailed information on the components is available at theLibrary README.
Build
also allows you to add your own custom and pluggable Nodes on the fly.
In the custom Nodes, you can use the collection of existing Atoms, author your own, or mix them together. The custom Nodes are immediately usable when constructing your Graphs or sharing the Graphs with others.
You can also share your custom Nodes with other users, or use others' custom libraries.
For information on how to configure the custom libraries, seeCustom Libraries.
It is also easy to runBuild
andRun
locally:
Clone the repo:
git clone https://github.com/Atom-54/xenonjs.git -b 0.7cd xenonjs
Note:0.7
is our stable(-ish) version. We are constantly adding cool new features, and you are welcome to try ToT at your own risk :)
At the very first time run:
npm install
You can use a webserver of your choice to access the localRun
andBuild
, but for your convenience, we provide one with our repo. Run the webserver:
npm run serve
To accessBuild
IDE in your browser go to:
To accessRun
application in your browser go to:
By default, the Graph that was last open inBuild
will be run. To choose a different graph, add a URL param:
We spend most of our time writing code and, unfortunately, this means that our documentation is incomplete or lags behind. We are working on it!
In the meantime, if you have any questions, ideas or feedback, please, don't hesitate to reach out:
- either by filing anGitHub issue
- or via email:info@xenonjs.com.
XenonJs is modular.
Components are simple, dependency-free, and designed to interoperate with current technology.Components are composable, and compositions are composable. Re-use is first-class.The low-cost of components make them applicable to a wide spectrum of tasks - from quick experiments or individual features, to complex and scalable applications or platforms.
XenonJs Graphs are solution blueprints.
Graphs are declarative and semantic: amenable to coherent reasoning by humans and LLMs.Graphs leverage AI on multiple layers: for interpreting user-context and intention, composing modules into experiences, authoring new modules, and inside modules themselves for data processing and generation.
Reality interfaces (cameras, screens, touch devices, speaker, mics, and so on) are decoupled from core computation, supporting federation of devices and execution contexts.We allow for user's data to be available only via keys they hold.Computation ideally occurs locally, and data egress is constrained.
This documentation is incomplete (yet!). If you have any questions, ideas or feedback, please, don't hesitate to reach out, either by filing anissue, joining ourdiscord or via email:info@xenonjs.com.
About
Create and share easy-to-make, built-to-last, innovative, and customizable experiences