netropy is a novel kind of lightweight virtual machine for processing structured information.
Unlike other VMs, such as Java's JVM, the .NET CLR, or Node.js, which in their philosophical foundation are based on object-oriented abstractions, this inventive technology does not need to define a new language for its purposes.
Instead, it uses a radically different and much simpler approach to information processing, resulting in unparalleled performance and scalability.
The extensible core engine is programmed in modestly modern C++*, and (when augmented with streaming compiler technology and a network layer based on the asio C++ library) gives you a full stack platform called the XENOmat.
In terms of speed, low overhead, and robustness it is well-suited for embedded applications, IoT edges, and critical infrastructure.
*The API relies on a few C++11 features with fallbacks using the boost libraries.
Here we see the resource usage of this XENOmat amidst other processes on this server.
Loading...
Monitoring services like that are easily installed with a <xeno:pipe/> service, such as in this fragment from the blueprint of this service.
Likewise, the service at
Started as a private research project in 2004, it evolved into a full-blown product for building RESTful HATEOAS applications in 2009 (you can tell from the so-last-decade styling here), and eventually matured into the present full-stack reactive real-time processing platform during early 2014.
Over the years, netropy often has been used as an agile prototyping tool (e.g. configured to serve mock SOAP replies while finishing the frontend, instead of waiting for the other team to eventually get their bloated J2EE backend working).
It has also proven itself as a fun and easy way to hack IoT stuff with the Raspberry Pi and has steadily fulfilled its purpose as the foundation of a mission-critical system for controlling rod pumping systems.
netropy marvels as a platform for microservices, makes a great IoT backend, and is a kind of Swiss army knife for bringing your legacy data wherever you need it.
Please take a few minutes to get an overview of the concepts covered by this software:
Then, simply fetch the server binary, get a blueprint, and run:
# curl -O https://netropy.online/distribution/ubuntu/xenomat # chmod a+x xenomat # curl -O https://netropy.online/download/blueprint.xml # ./xenomat -d
The -d
flag will make the server run in debug (console) mode.
Running xenomat -h
will display the command line syntax.
The mandatory minimal application.
Note the importance of the trailing slash on the URL - it gives a different context (the page suddenly can't resolve the stylesheet given by a relative link).
Get a graphical overview over this <xeno:space/>.
XENOmat has full introspection, which lets you visualise your system with standard web technologies, such as letting the browser apply XSLT transformations.
A plain XML version (the actual source file) can be viewed here.
A small AJAX application for modifying this
<xeno:space/>. From long time before anything like jsfiddle and gists and cloud snippets existed. Useful for fast prototyping a backend. Of course you can use curl
as well with any <xeno:stash/>.
Using the <xeno:sql/> service to retrieve data from an Access™ database and letting the browser XSL‑Transform the resulting XML to XHTML.
Currently only working on Windows hosts, as the Linux/Darwin ports of the service (covering sqlite3, postgres, and mysql) are not completed. The jury is still out on which strategy to choose.
Anyway, you might have a look at the source to see how netropy connects to SQL.
A complete distributed statemachine in only 100 lines. Also, there's a German version.
A pure CSS animated SVG clock. No JS is needed, the animation is generated on the server to show the right time of day.
Much of netropy is open source, licensed under the Netropy No Bullshit Licence (N2BL), which basically is a liberal BSD-style license.
The C++ API and examples are starting to show up on github.