Ganja.js is a Geometric Algebra code generator for javascript. It generates Clifford algebras and sub-algebras of any signature and implements operator overloading and algebraic constants. Mathematically, an algebra generated by ganja.js is a graded exterior (Grassmann) algebra (or one of its subalgebras) with a non-metric outer product, extended (Clifford) with geometric and contraction inner products, a Poincare duality operator and the main involutions and morphisms. Technically, ganja.js is a code generator producing classes that reificate algebraic literals and expressions by using reflection, a built-in tokenizer and a simple AST translator to rewrite functions containing algebraic constructs to their procedural counterparts. ganja.js now has a nodejs based templated source generator that allows the creation of arbitrary algebras for C++, C#, python and rust. The generated code provides in a flat multivector format and operator overloading.

Features

  • Ganja.js enables real math syntax inside javascript, with element, vector and matrix operations
  • Complex numbers, dual numbers, hyperbolic numbers, vectors, spacetime events
  • Quaternions, dual quaternions, biquaternions or any other Clifford Algebra
  • ganja.js now has a nodejs based templated source generator that allows the creation of arbitrary algebras for C++
  • The generated code provides in a flat multivector format and operator overloading
  • Several algebras are available in pregenerated versions

Project Samples

Project Activity

See All Activity >

Categories

Mathematics

License

MIT License

Follow Ganja.js

Ganja.js Web Site

Other Useful Business Software
Eurekos LMS - Build a Smarter Customer Icon
Eurekos LMS - Build a Smarter Customer

The Eurekos customer training LMS makes it easy to deliver product training that retains more customers and transforms partners into advocates.

Eurekos is a purpose-built LMS that engages customers throughout the entire learning journey from pre-sales, to onboarding, and everything after.
Learn More
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of Ganja.js!

Additional Project Details

Programming Language

C#, JavaScript

Related Categories

C# Mathematics Software, JavaScript Mathematics Software

Registered

2022-06-09