Skip to content

stub22/axiomagic

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

axiomagic exploration toolkit

AxioMagic is an open source toolkit for interactive knowledge exploration webapps.
Core components use Scala, Akka Http, RDF, and HTML/CSS/Javascript.

Quick Functional Summary

Axiomagic is a toolkit for interactions with domain-specific data, deployed in browsers, calculators, simulators, and games.
The project features are ripe for customization in science, finance, and edutainment.

Please also see our main website at AxioMagic.fun

Prototype status (updated 2021-09-28)

Current Pipeline Test Launchers

Here are 12 launchable scala programs, each of which may be considered a test and/or demo of some feature's existence. They are intended to be runnable in CI. File input data is pulled from classpath resources. Almost no arguments or enviroment used by these launchers. Some exceptions are noted below.

Web stuff

Math stuff

Onto stuff

Storage stuff

Grinding stuff

  • axmgc.xpr.exd.TstExdLnch
    • Launches a local Spark data analysis pipeline
    • Loads a few large text resources (stories from proj Gutenberg) into RDDs and prints some text analysis stats
    • Runs modified copy of spark test: SimpleSkewedGroupByTest
  • axmgc.xpr.dkp_shacl.DkpDtstLnch
    • Launches a few tests of SHACL library from TopQuadrant

Other launchers of less significance

Features and Structure

More overview is available at main project website:

This work builds on models and designs from previous projects, including the Glue-AI 1.x constellation from Stu B22 and pals.

Axiomagic is intended to be a thin layer of functions and tools, relying on the burgeoning capacity of today's open source components for server, cloud, browser, and edge devices. Use it to build rich, sophsiticated applications, or quick, narrow investigations.

Interactive Pipeline Technology

  • Presentation data mapping over curated models
  • Deployed as library or service
  • Scala, RDF, Akka, HTML/JS

Upstream Math/Proof Technology

  • Seed knowledge graphs built from varied inputs
  • Dependent types, constraint logic, proofs
  • Idris, F star, Lean, Agda
  • See our Math Review page

Fun Part : What, Why, How?

AxioMagic components generate tweakable and routable data-interactions for users, employing color, sound, motion, and even music. Interactions generally take the form of web components accessing structured data.

Interactions are assembled from equations, functions, mappings, templates, rules, and schemas. These definitions commonly use parameters, which may be tweaked by users at runtime.

Runtime Component Structures

Axiomagic enables both client (AxCli) and cerver (AxSrv) components, which may be selectively combined into an embedded (AxEmb) setup.

AxCli client component

  • GUI + network + NUI demonstration components, adaptable to interactive applications for advanced users
    • Experimental components, not production optimized
  • Primarily used in HTML5 + JS environments.
  • Uses rdfjs N3 parser to read inbound turtle-RDF msgs.
  • Optional MIDI connections for tweaking and switching of running components.
  • Authentication and data privacy+portability integrations with WebId and Solid pods.

AxSrv server component

  • RDF-mediated logic core for state, query, goal-seeking and planning.
  • Apps authored using lab server components, tested by running AxCli GUI with local info streams.
  • Publish apps as bundled deployments, attached to cloud sources for domain data.
  • Laboratory webServer + dataRoute components use Akka + Scala, running on JVM, on Linux or MS-Win (untried on Mac).
  • Deploy RDF-configured cloud functional components to Lambda and other cloud compute services.

AxEmb embedded component

  • Embedded components combine features of AxSrv and AxCli for a particular narrow use case.
  • Preferred approach is compiling via Rust to LLVM executable, runnable on micro-OS.

Example Applications

Some open science experiments helping drive our requirements for Axiomagic

Scientific Study Examples

Practical Engineering Examples

About

Axiomagic is an interactive exploration toolkit

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published