Menai
Menai is a pure functional programming language with Lisp-like S-expression syntax. It is homoiconic, strictly typed, and side-effect free. It has no I/O, no mutation, and no access to the filesystem, network, or any other external state.
That last part is the whole point. Menai is a computational language - you hand it values, it returns a value, and nothing else changes. There is no filesystem to touch, no network to reach, and no state to corrupt. This means there's nothing to sandbox and nothing to escape. An AI can be given Menai and left to run it unsupervised, which is a much stronger guarantee than "we tried to block the dangerous parts".
Menai doesn't do I/O itself, but it is designed to be embedded in software that does. The host reads the file, queries the clock, or writes the result - Menai does the computation in between. This keeps the non-deterministic and stateful parts of a system outside the language, where they can be permissioned and reviewed.
Menai started life inside Humbug, where it is used for file and data processing, sorting, parsing, and mathematical reasoning. It was extracted into its own repository because it solves a fundamentally different problem and has zero dependencies on Humbug.
What you can do with it
Menai has a standard library, shipped with the package under src/menai/stdlib/,
written entirely in Menai. It implements useful binary and text processing features:
| Module | What it does |
|---|---|
base64-decode / base64-encode |
Read and write Base64 (standard and URL-safe alphabets) |
bmp-decode / bmp-encode |
Read and write uncompressed 24-bit and 32-bit BMP images |
csv-decode / csv-encode |
Read and write RFC 4180 CSV |
deflate-compress / deflate-decompress |
Compress and decompress raw DEFLATE streams (RFC 1951) |
gzip-compress / gzip-decompress |
Compress and decompress gzip streams (RFC 1952) |
json-decode / json-encode |
Read and write JSON |
png-decode / png-encode |
Read and write non-interlaced 8-bit PNG images |
regexp |
Compile a pattern and search, split, or replace within strings |
tar-entries / tar-extract / tar-create |
Read tar entry headers, extract entry contents, and build POSIX ustar archives |
xml-decode / xml-encode |
Read and write XML |
zip-entries / zip-extract / zip-create |
Read ZIP central directories, extract and decompress entries, and build archives |
zlib-compress / zlib-decompress |
Compress and decompress zlib streams (RFC 1950) |
These are not bindings to libraries written in another language. The whole idea is to focus on making Menai fast enough to do these things natively.
The language
Menai has a rich but strict type system. Integers are arbitrary precision, and there are floats, complex numbers, strings, booleans, symbols, bytes, structs, and enums. An enum is a closed set of named variants, compared for identity only — the shape of a state machine or an option argument. Menai has a useful set of containers including lists, dictionaries, and sets. It also has vectors for index-heavy code where a list's O(n) random access is a bottleneck.
Everything is dynamically typed, but every low-level operation is strictly typed.
There is no implicit coercion: integer+ adds integers and raises an error if you
hand it a float. There are no overloaded operators. This is deliberate and emphasizes
precision over convenience, with explicit clarity over brevity. It turns out AIs generate
very robust code this way.
The language has lexical scoping, pattern matching with destructuring, a compile-time module system, and tail-call optimisation. It's very much like a pure functional scheme but without any global state and with a more opinionated approach to operation naming.
Here is a program that counts word occurrences and returns the three most frequent words, sorted by frequency:
(letrec
((count-words
(lambda (words)
(fold-list
(lambda (acc word)
(dict-with acc word
(integer+ 1 (dict-get acc word 0))))
(dict) words)))
(top-words
(lambda (text n)
(let* ((words (string->list (string-downcase text) " "))
(counts (count-words words))
(pairs (sort-list
(lambda (a b) (integer>? (list-get a 1) (list-get b 1)))
(map-list (lambda (key)
(list key (dict-get counts key)))
(dict-keys counts)))))
(list-slice pairs 0 n)))))
(top-words "the quick brown fox jumps over the lazy dog the fox runs" 3))
This returns (("the" 3) ("fox" 2) ("quick" 1)).
The full language manual is in docs/. Start with
docs/index.md for a table of contents and introduction. The manual
is written for both human and AI readers.
Compiler and runtime
Menai is compiled, not interpreted. The pipeline goes through five internal representations on the way to bytecode: abstract syntax tree, intermediate representation, control-flow graph, virtual code, and finally bytecode.
Each representation makes a different class of optimisation natural. Inlining and dead binding elimination want a tree, branch constant propagation and phi collapsing want a control-flow graph, slot allocation and peephole optimisation want a flat instruction list, etc. Each layer exists because trying to do its passes anywhere else would be awkward, fragile, or fidelity-losing.
The bytecode runs on a register-based C VM with a pool allocator, reference counting, and a closure cycle collector. The VM has no process-global mutable state, so multiple instances can run independently and safely.
Compilation is fast enough to do on demand. Every optimisation has to justify its cost: if a pass costs 10ms it needs to offer close to that as a saving in a single runtime use, and if it costs 100ms it is probably not worth having.
The pipeline is authoritative in
src/menai/menai_compiler.py — it is always current
and should be read directly rather than reproduced in documentation.
Tooling
Menai ships with a full set of command-line tools:
| Tool | Purpose |
|---|---|
menai-eval |
Compile and run a .menai file, with optional compiler and VM profiling |
menai-test |
Discover and run *.test.menai suites |
menai-pretty-print |
Format Menai source |
menai-disassemble |
Print annotated bytecode disassembly |
menai-benchmark |
Run the performance benchmark suites |
menai-pipeline |
Run a JSON-defined pipeline of tool and Menai steps |
The profiling is worth noting. menai-eval, menai-benchmark, and
menai-pipeline can all profile VM execution three ways: --profile ranks functions
by instructions executed, --opcodes counts opcode frequency, and --annotate shows
the annotated disassembly with each instruction's execution share. That last one is
a perf annotate view for Menai.
Embedding Menai
Menai is designed to be embedded. The interface is deliberately small —
Menai, MenaiError, MenaiString, MenaiList, and MenaiValue — and the language
has no idea who is hosting it.
The menai-pipeline tool demonstrates the pattern:
a JSON file describes a sequence of steps, some of which are I/O operations
(filesystem, clock, console) and some of which are Menai computations. Values flow
between them, and because Menai is pure, adjacent Menai steps are automatically
collapsed and optimised together before execution. The
examples/ directory has working pipelines that read
BMP files, parse JSON, and combine clock readings with file contents.
Designed with AI
Menai was designed with AI, and with the assumption that AI would be heavily used both in implementing the language and in using it. That means it does a few things differently to a human-focused language.
The guiding question is always "what would you, as an AI, want in a language, as
opposed to what would a human want?" The answer, repeatedly, was precision over
convenience. Explicit integer+, float+, and complex+ operators instead of one
overloaded +, no implicit coercion, proper lists only, etc.
The AI-facing language reference lives in
src/menai/menai_help.py. It is the single source of truth
for the help text shown to AI agents, fetched by the host rather than duplicated, so it
can never drift out of sync with the language.
Getting started
Installation
pip install menai
The C VM is compiled into the wheels, so pip install menai includes it
automatically — no separate build or download step is needed. Wheels are
published for Linux, macOS, and Windows on x86_64 and ARM64, across Python
3.10–3.14.
A first program
(let ((greet (lambda (name)
(string-concat "Hello, " name))))
(greet "World"))
Evaluates to "Hello, World".
Development
For local development, install in editable mode and build the C VM from source:
pip install -e ".[dev]"
make build
Requires a C compiler (gcc, clang, or MSVC).
Running tests
make test
Repository structure
menai/
├── docs/ # language manual and design records
├── pyproject.toml # Python package configuration
├── setup.py # C VM extension build (platform-specific flags)
├── src/
│ ├── menai/ # compiler core (lexer, parser, IR, CFG, bytecode, VM)
│ │ └── stdlib/ # standard library (.menai files)
│ ├── menai_benchmark/ # performance benchmarking tool
│ ├── menai_disassemble/ # bytecode disassembler
│ ├── menai_eval/ # evaluator: compile, run, and profile a .menai file
│ ├── menai_pipeline/ # JSON-defined pipeline runner (tool + Menai steps)
│ ├── menai_pretty_print/ # code formatter
│ ├── menai_render/ # shared bytecode rendering and code-object walk
│ ├── menai_trace/ # VM instruction and call trace rendering
│ └── menai_test/ # test runner for *.test.menai files
└── tests/ # compiler core tests
Where to go next
docs/index.md— the language manualblueprint.md— design philosophy and core principlesdocs/adr/— the architecture decision recordssrc/menai_pipeline/README.md— the pipeline runnersrc/menai_benchmark/README.md— the benchmark suites
License
Apache License, Version 2.0. See LICENSE.txt.
Metadata
Release files for menai 0.8.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| menai-0.8.0.tar.gz | 577.6 kB | With provenance | Details |
Built distributions (wheels)
Total release size: 24.8 MB
Release files / menai-0.8.0.tar.gz
| Download URL | menai-0.8.0.tar.gz |
|---|---|
| Size | 577.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
383b6bc61a967909d1397ba15188b2cc8b51ba33f29202f310696bc6ce3f19d5
|
|
BLAKE2b-256 checksum How to use checksums |
7db1fdf5bfa730dc3ed25d284fe43395dd3a31a33d353e3a97dc729b96024f2f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 10, 2026.
Transparency logRelease files / menai-0.8.0-cp314-cp314-win_amd64.whl
| Download URL | menai-0.8.0-cp314-cp314-win_amd64.whl |
|---|---|
| Size | 767.6 kB |
| Tags | CPython 3.14 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
78c720b2cc87cb66bc5159cae8c4381795edc8829cf0938780ebd1d43550c728
|
|
BLAKE2b-256 checksum How to use checksums |
083e48ae01d2ea6598d6257c37a13b82a4bf78656893a55fb327d65db17a765b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 10, 2026.
Transparency logRelease files / menai-0.8.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | menai-0.8.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 1.3 MB |
| Tags | CPython 3.14 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
92f183eb4079667261ca370180c0611bcf0f1e7daaaf5a6d90b7c238ab6643b7
|
|
BLAKE2b-256 checksum How to use checksums |
334718495e2327091f4f39f05f441d592daa5f062788156f0f9d49d842c9e4de
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 10, 2026.
Transparency logRelease files / menai-0.8.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
| Download URL | menai-0.8.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 1.3 MB |
| Tags | CPython 3.14 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
85b0117a17efecb8797a0df41f7bdf19c88594053a4678f614e1b2d12d783230
|
|
BLAKE2b-256 checksum How to use checksums |
4bf31e4d2ea2e959fdedc69a52d1d363fa78f4ba0bc64dc1de854379e1877f13
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 10, 2026.
Transparency logRelease files / menai-0.8.0-cp314-cp314-macosx_11_0_arm64.whl
| Download URL | menai-0.8.0-cp314-cp314-macosx_11_0_arm64.whl |
|---|---|
| Size | 768.4 kB |
| Tags | CPython 3.14 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
7d6687b556d30ee2fd875f91f7e9055e4f3d83afbce641812bcbf0081745c2a9
|
|
BLAKE2b-256 checksum How to use checksums |
d5df274e2e1e0a8f7eb994dfd22a1e545eeb97ad7482dadc4af2c6fc7cf5065a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 10, 2026.
Transparency logRelease files / menai-0.8.0-cp314-cp314-macosx_10_15_x86_64.whl
| Download URL | menai-0.8.0-cp314-cp314-macosx_10_15_x86_64.whl |
|---|---|
| Size | 778.5 kB |
| Tags | CPython 3.14 macOS 10.15+ x86-64 |
|
SHA-256 checksum How to use checksums |
5e862dc5a2b45d50a53b6107c00f91c5888d0f5a60abf35b9221667acc27ee69
|
|
BLAKE2b-256 checksum How to use checksums |
9121c268c6b9f5da7909bc5fc63470b2b0746746a17c390bb484df1b43c6270c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 10, 2026.
Transparency logRelease files / menai-0.8.0-cp313-cp313-win_amd64.whl
| Download URL | menai-0.8.0-cp313-cp313-win_amd64.whl |
|---|---|
| Size | 766.3 kB |
| Tags | CPython 3.13 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
5a256f74f36494419e2251f6570bbdbc90fc21ca3bd065fe979ac33ef09ba920
|
|
BLAKE2b-256 checksum How to use checksums |
49dfe0b0c879131cecfd7589b693c3fb68ce3776e3a6c8657e5f25edb616f720
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 10, 2026.
Transparency logRelease files / menai-0.8.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | menai-0.8.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 1.3 MB |
| Tags | CPython 3.13 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
379df1f7e97fe630f95d1b2f08eaa5b7f0a62cd65795b9e4dab07518c00e9221
|
|
BLAKE2b-256 checksum How to use checksums |
edee31771fb6449632f5102d531be075b9e96b4cf675252c70aed4d678bfc2be
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 10, 2026.
Transparency logRelease files / menai-0.8.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
| Download URL | menai-0.8.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 1.3 MB |
| Tags | CPython 3.13 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
6712a6fd18bab9658aead704ee6a59aa7c2a0d91bf94ade09fedd11cc00b8d24
|
|
BLAKE2b-256 checksum How to use checksums |
3113dc17ddbc0194fbf3c042b5205028699afd53f5c502a2a1b4870c47a102c5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 10, 2026.
Transparency logRelease files / menai-0.8.0-cp313-cp313-macosx_11_0_arm64.whl
| Download URL | menai-0.8.0-cp313-cp313-macosx_11_0_arm64.whl |
|---|---|
| Size | 768.4 kB |
| Tags | CPython 3.13 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
1f917787dc63b1e9d170445d6218b3be3c0ccc76e79a9eb79f3ca7e53e86d593
|
|
BLAKE2b-256 checksum How to use checksums |
a8228ebf32521fa92972b23c1a8b242cef3c03f5a21b0e1e71cd35eb8208dd9a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 10, 2026.
Transparency logRelease files / menai-0.8.0-cp313-cp313-macosx_10_13_x86_64.whl
| Download URL | menai-0.8.0-cp313-cp313-macosx_10_13_x86_64.whl |
|---|---|
| Size | 778.4 kB |
| Tags | CPython 3.13 macOS 10.13+ x86-64 |
|
SHA-256 checksum How to use checksums |
bfde195d4e301fa19f28c84c5b63c712ff29de025e58a214878ecb538fd1b1bf
|
|
BLAKE2b-256 checksum How to use checksums |
530ad3f0b348f5875072f5a08dcb545662a1c4b1ed19bb34994c77142abd2571
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 10, 2026.
Transparency logRelease files / menai-0.8.0-cp312-cp312-win_amd64.whl
| Download URL | menai-0.8.0-cp312-cp312-win_amd64.whl |
|---|---|
| Size | 766.3 kB |
| Tags | CPython 3.12 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
1efec21885c76b4f867297149229b4a591cf005d1377d1a7e2b70eeea7992489
|
|
BLAKE2b-256 checksum How to use checksums |
12bbb6deedd9fd7c2472ca1cd2e604511f635acca84dc81401f61e60167a3c03
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 10, 2026.
Transparency logRelease files / menai-0.8.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | menai-0.8.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 1.3 MB |
| Tags | CPython 3.12 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
fd350a1b148c5ab89fa05e9d38401744f95ee8afb5d3478b1b661141c8034953
|
|
BLAKE2b-256 checksum How to use checksums |
b5bc2aa3e3add76e2c67f7f437c2a5e3416ed602c58b57d353f4ac5583cf57f6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 10, 2026.
Transparency logRelease files / menai-0.8.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
| Download URL | menai-0.8.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 1.3 MB |
| Tags | CPython 3.12 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
0c17781d04cfd47a920f3a8d886f83758d1673932e608b21114c8bfc4dffe5da
|
|
BLAKE2b-256 checksum How to use checksums |
61e9a0839bc76ba458a9b937f9100d6e6f8bd0e1d0a8a0d26117ff797cce0e83
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 10, 2026.
Transparency logRelease files / menai-0.8.0-cp312-cp312-macosx_11_0_arm64.whl
| Download URL | menai-0.8.0-cp312-cp312-macosx_11_0_arm64.whl |
|---|---|
| Size | 768.4 kB |
| Tags | CPython 3.12 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
13e45ebacdeb2821e5a9c2d0fb8ae38e04b716a5151527211645fcb25229d839
|
|
BLAKE2b-256 checksum How to use checksums |
ab2e8d5d90e24e65e0137dad4b4cde7a47c8003142090ee6cb9db1bc8c46a19b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 10, 2026.
Transparency logRelease files / menai-0.8.0-cp312-cp312-macosx_10_13_x86_64.whl
| Download URL | menai-0.8.0-cp312-cp312-macosx_10_13_x86_64.whl |
|---|---|
| Size | 778.4 kB |
| Tags | CPython 3.12 macOS 10.13+ x86-64 |
|
SHA-256 checksum How to use checksums |
524b752cf07968d2775bebf2b6e8684b040becf0e671d391e19fb0b60be0640d
|
|
BLAKE2b-256 checksum How to use checksums |
119435ceff56b6110c463e44b3863c25fdfb3bf87df9cf101f7414707cb3a15c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 10, 2026.
Transparency logRelease files / menai-0.8.0-cp311-cp311-win_amd64.whl
| Download URL | menai-0.8.0-cp311-cp311-win_amd64.whl |
|---|---|
| Size | 766.1 kB |
| Tags | CPython 3.11 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
e367192fca694db5ba34d95862c05ad26cd4382e648e0664c1a1ffe7876ce81f
|
|
BLAKE2b-256 checksum How to use checksums |
f4baf69d1ecdcdf825b843761b24b8effe2183d2e5809a4c37c7f05b0ea43e27
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 10, 2026.
Transparency logRelease files / menai-0.8.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | menai-0.8.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 1.3 MB |
| Tags | CPython 3.11 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
c7e09e17508cd8516504016d89a9bc03f0b24714ab57c18b6dd86d4678ff8be7
|
|
BLAKE2b-256 checksum How to use checksums |
477ae55e0f87787cf1825d4ea4189f621008ba7cd1ce488fcb60468caa9122f8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 10, 2026.
Transparency logRelease files / menai-0.8.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
| Download URL | menai-0.8.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 1.3 MB |
| Tags | CPython 3.11 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
be49c2005da97f93d75242a37fa110e8283515e69e1599a8de7c1a71463684e5
|
|
BLAKE2b-256 checksum How to use checksums |
0d0d3c86cf681a58152cd734f894be26ab1872fdbb4f2d9ee26ca1e6fcf9636b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 10, 2026.
Transparency logRelease files / menai-0.8.0-cp311-cp311-macosx_11_0_arm64.whl
| Download URL | menai-0.8.0-cp311-cp311-macosx_11_0_arm64.whl |
|---|---|
| Size | 768.0 kB |
| Tags | CPython 3.11 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
643df70e2ebd71151612afa209b311830e0cd093fd66fe0b51df19c013c25cb0
|
|
BLAKE2b-256 checksum How to use checksums |
e596c37906d51fe90c2ca67e91c2d5b3b9087b396f26b7cb1635c609124be6f3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 10, 2026.
Transparency logRelease files / menai-0.8.0-cp311-cp311-macosx_10_9_x86_64.whl
| Download URL | menai-0.8.0-cp311-cp311-macosx_10_9_x86_64.whl |
|---|---|
| Size | 777.8 kB |
| Tags | CPython 3.11 macOS 10.9+ x86-64 |
|
SHA-256 checksum How to use checksums |
7e2a33edc5490b02fe43ef333aa32476e39b8b9845f561bee4de3093929d8051
|
|
BLAKE2b-256 checksum How to use checksums |
c9a866667446af9dd650896e5046dcc4f5d64fad8c09d2acc7a02a4718a85590
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 10, 2026.
Transparency logRelease files / menai-0.8.0-cp310-cp310-win_amd64.whl
| Download URL | menai-0.8.0-cp310-cp310-win_amd64.whl |
|---|---|
| Size | 766.2 kB |
| Tags | CPython 3.10 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
ed4e9aa97d7e225cc0d811c5bf962e193c34c21dd1fe8f4c5a8acb3ebf8e2fa4
|
|
BLAKE2b-256 checksum How to use checksums |
ccaaa60a7a3674fe05ad31a565fd20ecbd0f27595a0b34946be7fbf9e1466e73
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 10, 2026.
Transparency logRelease files / menai-0.8.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | menai-0.8.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 1.3 MB |
| Tags | CPython 3.10 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
b1c172f81c406ecd9ff422cb5db225cd108a04ace8fc6c237dfc4a0e8331ed11
|
|
BLAKE2b-256 checksum How to use checksums |
55485f788c8486748112e2a081d504c8945e00387f759c8832959823abd988e4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 10, 2026.
Transparency logRelease files / menai-0.8.0-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
| Download URL | menai-0.8.0-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 1.3 MB |
| Tags | CPython 3.10 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
a4892813c2c54d111c0718506999e70e3af6b1e6eedf4f9b8517728f26019551
|
|
BLAKE2b-256 checksum How to use checksums |
c6ccabe37ccb0f4b72f48336db858f860634580e8a1f418accfe5e18c35bb56a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 10, 2026.
Transparency logRelease files / menai-0.8.0-cp310-cp310-macosx_11_0_arm64.whl
| Download URL | menai-0.8.0-cp310-cp310-macosx_11_0_arm64.whl |
|---|---|
| Size | 768.3 kB |
| Tags | CPython 3.10 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
3dd5797e84a49da63c708f1774563bd51adc6ec2e2f2a4a051340ef0bf9c4a60
|
|
BLAKE2b-256 checksum How to use checksums |
0aff9fbba69a749a49e04d1807b97f884021f37bc11a0eb5e0fa7ebf8d6891d4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 10, 2026.
Transparency logRelease files / menai-0.8.0-cp310-cp310-macosx_10_9_x86_64.whl
| Download URL | menai-0.8.0-cp310-cp310-macosx_10_9_x86_64.whl |
|---|---|
| Size | 778.1 kB |
| Tags | CPython 3.10 macOS 10.9+ x86-64 |
|
SHA-256 checksum How to use checksums |
57decaed215bb867c2d0ea2edc2a9376f5c1c60efcab7bcf525216b8c9869550
|
|
BLAKE2b-256 checksum How to use checksums |
b591169c8ff79c09eeea94b28794f56f431af7871128850434d7f2894eb4fe0a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 10, 2026.
Transparency logSecurity for menai 0.8.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 26 files in this release have been uploaded with provenance metadata.
Attestation for menai-0.8.0.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 10, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.