A reverse-mode automatic differentiation engine with neural networks, built in C++ with Python bindings.
AutoNeuroNet is a fully implemented automatic differentiation engine with custom matrices, a full neural network architecture, and a training pipeline. It comes with Python bindings via PyBind11, enabling quick, easy network development in Python, backed by C++ for enhanced speed and performance.
Table of Contents
- Features
- Installation
- Quickstart
- Project Structure
- Building from Source
- Testing
- Demos
- API Overview
- Documentation
- References
- License
Features
- Reverse-Mode Automatic Differentiation - Scalar-level AD with full computation graph and backpropagation
- Custom Matrix Library - 2D differentiable matrices with element-wise and matrix operations
- Neural Network Layers -
Linear,ReLU,LeakyReLU,Sigmoid,Tanh,SiLU,ELU,Softmax - Loss Functions -
MSELoss,MAELoss,BCELoss,CrossEntropyLoss,CrossEntropyLossWithLogits - Optimizers -
GradientDescent,SGD(with momentum),Adagrad,RMSProp,Adam,AdamW - Weight Initialization - Kaiming (He) and Xavier (Glorot) initialization
- Model Persistence - Save and load trained model weights
- NumPy Interop - Convert between NumPy arrays and AutoNeuroNet matrices
- Python Bindings - Full C++ performance accessible from Python via PyBind11
- Cross-Platform - Builds on Linux, macOS, and Windows (Python 3.9 - 3.13)
Installation
Install from PyPI with uv (recommended):
uv add autoneuronet
Or with pip:
pip install autoneuronet
To include dependencies for running the demos:
uv add "autoneuronet[demo]"
# or: pip install "autoneuronet[demo]"
Quickstart
Scalar Automatic Differentiation
import autoneuronet as ann
x = ann.Var(2.0)
y = x**2 + x * 3.0 + 1.0
# Set the final gradient to 1.0 and perform backpropagation
y.setGrad(1.0)
y.backward()
print(f"y: {y.val}") # 11.0 = (2)^2 + 3(2) + 1
print(f"dy/dx: {x.grad}") # 7.0 = 2(2) + 3
Matrix Initialization
import autoneuronet as ann
X = ann.Matrix(10, 1) # shape: (10, 1)
y = ann.Matrix(10, 1) # shape: (10, 1)
for i in range(10):
X[i, 0] = ann.Var(i)
y[i, 0] = 5.0 * i + 3.0 # y = 5x + 3
Matrix Math
import autoneuronet as ann
X = ann.Matrix(2, 2)
X[0] = [1.0, 2.0]
X[1] = [3.0, 4.0]
Y = ann.Matrix(2, 2)
Y[0] = [5.0, 6.0]
Y[1] = [7.0, 8.0]
Z = X @ Y # or ann.matmul(X, Y)
print(Z)
# Output:
# Matrix(2 x 2) =
# 19.000000 22.000000
# 43.000000 50.000000
NumPy to Matrix
import autoneuronet as ann
import numpy as np
x = np.array([[1.0, 2.0], [3.0, 4.0]])
X = ann.numpy_to_matrix(x)
print(X)
# Output:
# Matrix(2 x 2) =
# 1.000000 2.000000
# 3.000000 4.000000
Neural Networks, Loss Functions, and Optimizers
import autoneuronet as ann
model = ann.NeuralNetwork(
[
ann.Linear(784, 256, init="kaiming"),
ann.ReLU(),
ann.Linear(256, 128, init="kaiming"),
ann.ReLU(),
ann.Linear(128, 10, init="kaiming"),
ann.Softmax(),
]
)
optimizer = ann.SGDOptimizer(
learning_rate=1e-2, model=model, momentum=0.9, weight_decay=1e-4
)
print(model)
Training Loop
loss = ann.MSELoss(labels, logits)
loss.setGrad(1.0)
loss.backward()
optimizer.optimize()
optimizer.resetGrad()
print(f"Loss: {loss.getVal()}")
Project Structure
AutoNeuroNet/
├── include/ # C++ header files
│ ├── Var.hpp # Scalar automatic differentiation
│ ├── Matrix.hpp # 2D differentiable matrix
│ ├── NeuralNetwork.hpp # Layer abstractions and network container
│ ├── Optimizers.hpp # Optimizer algorithms
│ └── LossFunctions.hpp # Loss function implementations
├── src/ # C++ implementation files
│ ├── Var.cpp
│ ├── Matrix.cpp
│ ├── NeuralNetwork.cpp
│ ├── Optimizers.cpp
│ └── LossFunctions.cpp
├── python/autoneuronet/ # Python package
│ ├── __init__.py # Re-exports C++ bindings
│ └── __init__.pyi # Type stubs for IDE support
├── demos/ # Example scripts and notebooks
│ ├── automatic_differentiation.cpp
│ ├── numeric_differentiation.cpp
│ ├── linear_regression.cpp
│ ├── linear_regression_demo.ipynb
│ ├── moons_classification_demo.ipynb
│ ├── mnist_demo.ipynb
│ └── gradient_descent_3d.py
├── docs/ # Documentation source (MkDocs)
│ ├── index.md
│ ├── install.md
│ ├── quickstart.md
│ └── api.md
├── .github/workflows/ # CI/CD
│ └── wheels.yml # Cross-platform wheel builds
├── pybind_wrapper.cpp # PyBind11 binding definitions
├── CMakeLists.txt # CMake build configuration
├── pyproject.toml # Python package metadata
├── mkdocs.yml # Documentation site config
├── uv.lock # uv-managed dependency lockfile
└── LICENSE # Apache License 2.0
Building from Source
Prerequisites
- C++17 compatible compiler
- CMake >= 3.20
- Python >= 3.9
- uv (recommended) or pip
- pybind11 (pulled in automatically by the build backend)
Clone and Build
git clone https://github.com/RishabSA/AutoNeuroNet.git
cd AutoNeuroNet
Install the Python package locally with uv (recommended):
# Creates .venv, builds the C++ extension via scikit-build-core + pybind11,
# installs the package and all dependencies from uv.lock.
uv sync --extra demo
Run any command inside the managed environment with uv run:
uv run python -c "import autoneuronet as ann; print(ann.Var(2.0))"
Or install with pip:
pip install ".[demo]"
Build the C++ library directly:
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build
Compile C++ Demos
# Automatic differentiation example
g++ demos/automatic_differentiation.cpp src/Var.cpp -I include -o demos/automatic_differentiation
# Linear regression example
g++ demos/linear_regression.cpp src/Var.cpp src/Matrix.cpp src/NeuralNetwork.cpp src/Optimizers.cpp src/LossFunctions.cpp -I include -o demos/linear_regression
Testing
AutoNeuroNet ships with a pytest suite covering the full Python API — scalar Var, Matrix, activations, layers, losses, optimizers, model persistence, and NumPy interop — including numeric grad_check verification of every backward pass.
Install the test extra and run the suite with uv:
uv sync --extra test
uv run pytest
Or with pip:
pip install ".[test]"
pytest
Common invocations:
uv run pytest -v # verbose
uv run pytest tests/test_var_backward.py # a single file
uv run pytest -k "grad" # match by name
uv run pytest --cov=autoneuronet # coverage report
The suite lives under tests/ and is organized by component: test_var_*.py, test_matrix_*.py, test_layer_*.py, test_optimizer_*.py, test_losses.py, test_neural_network.py, test_model_persistence.py, test_numpy_interop.py, and test_operations_module.py. Shared helpers (including grad_check_var / grad_check_matrix) live in tests/conftest.py.
Demos
| Demo | Description | Type |
|---|---|---|
| MNIST Classification | Handwritten digit recognition on MNIST | Jupyter Notebook |
| Moons Classification | Binary classification on sklearn moons dataset | Jupyter Notebook |
| Linear Regression | Simple linear regression walkthrough | Jupyter Notebook |
| 3D Gradient Descent | 3D visualization of gradient descent | Python Script |
| Automatic Differentiation | Scalar AD basics | C++ |
| Numeric Differentiation | Numeric vs automatic differentiation comparison | C++ |
| Linear Regression (C++) | Full training pipeline in C++ | C++ |
API Overview
Core Classes
| Class | Description |
|---|---|
Var |
Differentiable scalar with reverse-mode AD. Supports arithmetic, trig, log, exp, and activation functions. |
Matrix |
2D container of Var objects. Supports element-wise ops, matrix multiplication (@), and activations. |
Layers
| Layer | Description |
|---|---|
Linear(in, out, init) |
Fully connected layer. init: "kaiming" or "xavier". |
ReLU |
Rectified Linear Unit |
LeakyReLU(alpha) |
Leaky ReLU with configurable negative slope |
Sigmoid |
Sigmoid activation |
Tanh |
Hyperbolic tangent |
SiLU |
Sigmoid Linear Unit (Swish) |
ELU(alpha) |
Exponential Linear Unit |
Softmax |
Softmax normalization |
Loss Functions
| Function | Use Case |
|---|---|
MSELoss |
Regression |
MAELoss |
Regression |
BCELoss |
Binary classification |
CrossEntropyLoss |
Multi-class classification (with probabilities) |
CrossEntropyLossWithLogits |
Multi-class classification (with raw logits) |
Optimizers
| Optimizer | Key Parameters |
|---|---|
GradientDescentOptimizer |
learning_rate |
SGDOptimizer |
learning_rate, momentum, weight_decay |
AdagradOptimizer |
learning_rate, epsilon |
RMSPropOptimizer |
learning_rate, decay_rate, epsilon |
AdamOptimizer |
learning_rate, beta1, beta2, epsilon |
AdamWOptimizer |
learning_rate, beta1, beta2, epsilon, weight_decay |
Utility Functions
| Function | Description |
|---|---|
matmul(A, B) |
Matrix multiplication (also available as A @ B) |
numpy_to_matrix(arr) |
Convert a NumPy array to an AutoNeuroNet Matrix |
For the full API reference, see the documentation.
Documentation
Full documentation is available at rishabsa.github.io/AutoNeuroNet.
Metadata
Release files for autoneuronet 0.1.11
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distributions (wheels)
Total release size: 4.3 MB
Release files / autoneuronet-0.1.11-cp313-cp313-win_amd64.whl
| Download URL | autoneuronet-0.1.11-cp313-cp313-win_amd64.whl |
|---|---|
| Size | 188.3 kB |
| Tags | CPython 3.13 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
331de53bb9d18d4d5e26b33e1d9b262ee6195f3e15670ed846eb1aad167e150b
|
|
BLAKE2b-256 checksum How to use checksums |
52aacb4a2dfbe453c025ce4acded88c2aaeb31c9f19a984b159e2af1eed99e9d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / autoneuronet-0.1.11-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | autoneuronet-0.1.11-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 261.5 kB |
| Tags | CPython 3.13 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
03a7c03065b1222997beb270e8ea4351c6538bd43750872896517d199683379d
|
|
BLAKE2b-256 checksum How to use checksums |
ad63387948a0f28abc3bea46885dc67573e3df8d13a43c3521d4d435c18bc4df
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / autoneuronet-0.1.11-cp313-cp313-macosx_11_0_arm64.whl
| Download URL | autoneuronet-0.1.11-cp313-cp313-macosx_11_0_arm64.whl |
|---|---|
| Size | 198.0 kB |
| Tags | CPython 3.13 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
bc4c99fa43ca4d108f8e679a494733074c2c8d41d9ded257c97ed6d3a4fba8e1
|
|
BLAKE2b-256 checksum How to use checksums |
caa9caa482126773bf4ef5288ba3e1e26055e554fabb7e68a6ca304289e3e3b1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / autoneuronet-0.1.11-cp313-cp313-macosx_10_13_x86_64.whl
| Download URL | autoneuronet-0.1.11-cp313-cp313-macosx_10_13_x86_64.whl |
|---|---|
| Size | 217.6 kB |
| Tags | CPython 3.13 macOS 10.13+ x86-64 |
|
SHA-256 checksum How to use checksums |
aa087fe67ddf573f0340a17972cf3694128980d499c0bd1e3ddd86a8bac8db1b
|
|
BLAKE2b-256 checksum How to use checksums |
c680d0ca276489def8530fe6d56ff07be251765d7c1a1ba421facd8701a74ea8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / autoneuronet-0.1.11-cp312-cp312-win_amd64.whl
| Download URL | autoneuronet-0.1.11-cp312-cp312-win_amd64.whl |
|---|---|
| Size | 188.2 kB |
| Tags | CPython 3.12 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
b28c31617fde50c90886105d620948e375a8b541ee9f8bcc4c1709c2633c307e
|
|
BLAKE2b-256 checksum How to use checksums |
7cabc620de791de4b18bace8a9076fc71966f981a5cffd3c25e3a089d103e1e0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / autoneuronet-0.1.11-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | autoneuronet-0.1.11-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 261.4 kB |
| Tags | CPython 3.12 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
35302f473a2c4ab964c97ed6749089c7f9c0795e4a397ed91937ca28ddf55385
|
|
BLAKE2b-256 checksum How to use checksums |
8c4a9d4d8eb99e622caebee14bde3d21ddaf7c1f5dcd8aff71756c11e3088c68
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / autoneuronet-0.1.11-cp312-cp312-macosx_11_0_arm64.whl
| Download URL | autoneuronet-0.1.11-cp312-cp312-macosx_11_0_arm64.whl |
|---|---|
| Size | 197.9 kB |
| Tags | CPython 3.12 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
af80bac726b35e7ece7fe20c68d8b6f66e4ce80e7405a492fa903e141dae060d
|
|
BLAKE2b-256 checksum How to use checksums |
4b2b5ad7a33d1b5f7dbd65dd8238b233be85f7fdad6c4641af40d2638c150fb8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / autoneuronet-0.1.11-cp312-cp312-macosx_10_9_x86_64.whl
| Download URL | autoneuronet-0.1.11-cp312-cp312-macosx_10_9_x86_64.whl |
|---|---|
| Size | 218.0 kB |
| Tags | CPython 3.12 macOS 10.9+ x86-64 |
|
SHA-256 checksum How to use checksums |
98a1283ec915b7a73a68cadeadb44e4fd6622403ca55b92f7dfbfa782ccd4094
|
|
BLAKE2b-256 checksum How to use checksums |
749a3eca0767d579b04981909c1a6638c4316f20e5668f54379090a63be5c61f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / autoneuronet-0.1.11-cp311-cp311-win_amd64.whl
| Download URL | autoneuronet-0.1.11-cp311-cp311-win_amd64.whl |
|---|---|
| Size | 188.7 kB |
| Tags | CPython 3.11 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
1324c899f0925d32157f9431c273852be9d5c4f16680c0c7212cb9d4a0f076e5
|
|
BLAKE2b-256 checksum How to use checksums |
1417775e0d82fd7f9cfd3252272baf644dd7888a3f7815f12679bdcdb7bf2521
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / autoneuronet-0.1.11-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | autoneuronet-0.1.11-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 260.2 kB |
| Tags | CPython 3.11 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
9c9a2b514c88931e6970a75a11e36dd5f368ac5d397715aa82dea9041ebb3ee0
|
|
BLAKE2b-256 checksum How to use checksums |
449e76ca4df6f86867276153c73ad932c28a178edaff274c82edb2294ab136a2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / autoneuronet-0.1.11-cp311-cp311-macosx_11_0_arm64.whl
| Download URL | autoneuronet-0.1.11-cp311-cp311-macosx_11_0_arm64.whl |
|---|---|
| Size | 197.5 kB |
| Tags | CPython 3.11 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
419a2b4731b085a160ae33fad8b3fce044af91d173e2b6c181aa911e48f6e887
|
|
BLAKE2b-256 checksum How to use checksums |
501599f0e5db18fdc44681709138d88b981f920687cf982bc18947c0efc1014d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / autoneuronet-0.1.11-cp311-cp311-macosx_10_9_x86_64.whl
| Download URL | autoneuronet-0.1.11-cp311-cp311-macosx_10_9_x86_64.whl |
|---|---|
| Size | 212.9 kB |
| Tags | CPython 3.11 macOS 10.9+ x86-64 |
|
SHA-256 checksum How to use checksums |
0433c3809ffe285d7b61a8a573c63d89df1fcd413b08e495f7a4378359e926c1
|
|
BLAKE2b-256 checksum How to use checksums |
b61e95795e5bcf83b3077bdf79e9708fba0435a9a19ed529d22c8ed3b81304f7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / autoneuronet-0.1.11-cp310-cp310-win_amd64.whl
| Download URL | autoneuronet-0.1.11-cp310-cp310-win_amd64.whl |
|---|---|
| Size | 187.9 kB |
| Tags | CPython 3.10 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
1c28fc71973055ff5bf46bb202142c7b6eb01a3b9b8e789f33dae1e76986797f
|
|
BLAKE2b-256 checksum How to use checksums |
05407e2e0b54040272e2708e9103f77cdcfb8902d37b10e3de4901313a799a6d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / autoneuronet-0.1.11-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | autoneuronet-0.1.11-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 259.6 kB |
| Tags | CPython 3.10 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
90c6ec74e2ae7ebb6d2c6fc441bbdb38cb3197b928a6ecea071d558eb0183698
|
|
BLAKE2b-256 checksum How to use checksums |
f875472f6afd9ff5f0aa7e456b8cac2726998ea931486608986a827bf6d9b82e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / autoneuronet-0.1.11-cp310-cp310-macosx_11_0_arm64.whl
| Download URL | autoneuronet-0.1.11-cp310-cp310-macosx_11_0_arm64.whl |
|---|---|
| Size | 196.2 kB |
| Tags | CPython 3.10 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
0a7a1931a2a76c74bc36c6952a066251bd68118727765a3d0582e62d20a77671
|
|
BLAKE2b-256 checksum How to use checksums |
6dce8523ecd86b4270e2cc5f766e18c67191a96e18fda053162344878d1c178f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / autoneuronet-0.1.11-cp310-cp310-macosx_10_9_x86_64.whl
| Download URL | autoneuronet-0.1.11-cp310-cp310-macosx_10_9_x86_64.whl |
|---|---|
| Size | 211.5 kB |
| Tags | CPython 3.10 macOS 10.9+ x86-64 |
|
SHA-256 checksum How to use checksums |
f230a01cd2a1e5f12cb2c4a7605451c118875d9a800d8f5892a768d58ceac9f4
|
|
BLAKE2b-256 checksum How to use checksums |
2bc7c7103d16067ada0f7b67248603d6c0eeb9ade8bfc7b92f1f4c9026df51f6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / autoneuronet-0.1.11-cp39-cp39-win_amd64.whl
| Download URL | autoneuronet-0.1.11-cp39-cp39-win_amd64.whl |
|---|---|
| Size | 205.3 kB |
| Tags | CPython 3.9 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
a43dab096d8f0c339d13b2974c3054b95c19ff1d7740fa6c016b74b9ef0863b3
|
|
BLAKE2b-256 checksum How to use checksums |
4b0cd29b017f4da58d6fd68e4cf18e25693542d4505241d4c68bd950c42c928c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / autoneuronet-0.1.11-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | autoneuronet-0.1.11-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 260.0 kB |
| Tags | CPython 3.9 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
7856f38de7a5c9bbeecf8836ff3f9a080b02e79eff7fe8b1d3d891cbf9263eca
|
|
BLAKE2b-256 checksum How to use checksums |
6b12b5664c481a143eb5b9ea91919a0e3bbc5581ec6e4eb3b686d80d8a678e5c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / autoneuronet-0.1.11-cp39-cp39-macosx_11_0_arm64.whl
| Download URL | autoneuronet-0.1.11-cp39-cp39-macosx_11_0_arm64.whl |
|---|---|
| Size | 196.3 kB |
| Tags | CPython 3.9 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
0ea466a645c3e4a7ece4a521fb3451e2a64d0af92a94c4c695f364189ce69cf7
|
|
BLAKE2b-256 checksum How to use checksums |
4834a5329629508946e7827607aa08404de6d85d735510dabbad82ed7adb5d6b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / autoneuronet-0.1.11-cp39-cp39-macosx_10_9_x86_64.whl
| Download URL | autoneuronet-0.1.11-cp39-cp39-macosx_10_9_x86_64.whl |
|---|---|
| Size | 211.5 kB |
| Tags | CPython 3.9 macOS 10.9+ x86-64 |
|
SHA-256 checksum How to use checksums |
da390059c4bf8b7c6fc44483a7e0c83ba850cab83a497a7991cc2aca4d1c69cf
|
|
BLAKE2b-256 checksum How to use checksums |
38a8ff81070528aeb6e2ffe8f1098f8ab10f804fb2327d2b97a062d484eb7d6d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|