Blazingly 🔥 fast 🚀 and memory safe JaaJ implementation in Rust 🦀
Find a file
2025-06-16 21:45:41 +02:00
fonts feat: Add font figlet files 2025-02-04 12:28:50 +01:00
src bench(lol): Create bench_rainbow bench 2025-06-16 21:37:52 +02:00
.gitignore Initial commit 2025-02-04 10:50:08 +01:00
build.rs perf: Now using build script to generate jaajs 2025-02-04 16:34:38 +01:00
Cargo.lock build(cargo): Bump up crate version 2025-06-16 21:45:41 +02:00
Cargo.toml build(cargo): Bump up crate version 2025-06-16 21:45:41 +02:00
default.nix refactor(flake): Now produces two packages based on enabled features 2025-02-05 15:15:29 +01:00
flake.lock chore: Add nix package declaration 2025-02-04 13:10:14 +01:00
flake.nix chore(flake): Add support for aarch64-linux systems 2025-02-10 13:30:15 +01:00
README.md docs(README): Add benchmarks section 2025-06-16 21:42:52 +02:00

A minimal, memory-safe and blazingly 🔥 fast 🚀 JaaJ implementation written in Rust

Built using rulet and FIGlet fonts hosted by PLiG.

Features

  • 🎨 150+ fonts
  • 😼 Terminal colors
  • Compile time JaaJ rendering
  • 🦀 Rust
  • 💡 Easy to use
  • 🗿 JaaJ
  • 🤯 And much more!

Installation

Cargo

cargo install jaaj-rs
# With terminal colors support
cargo install --features lolcat jaaj-rs

Nix

Add jaaj-rs to your Nix flakes !

{
  description = "Jaajesque !";

  inputs = {
    jaaj-rs = {
      url = "git+https://git.ahur.ac/Jaaj-San/jaaj-rs";
      inputs.nixpkgs.follows = "nixpkgs";
    };
  };
}

Usage

alias jaaj="jaaj-rs" # For enhanced ergonomics
jaaj

Nix

{inputs, pkgs, ...}: {

  environment.systemPackages = [
    # Minimal version
    inputs.jaaj-rs.packages.${pkgs.system}.default
    # Colored version
    inputs.jaaj-rs.packages.${pkgs.system}.lolcat
  ];

}

Benchmarks

Test Name Benchmark Result (ns/iter) Variation
lol::tests::bench_rainbow 5,622.97 +/- 112.94
tests::bench_get_jaaj 3.31 +/- 0.04