NeuralNetwork
A small, dependency-free, from-scratch neural network library written in C++17, with Python bindings via pybind11.
It implements fully-connected (dense) feed-forward networks with backpropagation, three optimizers (SGD, Momentum, Adam), three loss functions, six activation functions, and accuracy metrics. Everything is implemented manually — no external math/ML library is used.
NeuralNetwork/
├── CMakeLists.txt # builds the C++ executable + Python module
├── main.cpp # C++ example (quadratic regression)
├── setup.py # pip install . (Python bindings)
├── pyproject.toml # build-system metadata for pip
├── include/ # public headers
│ ├── Activation.h
│ ├── Layer.h
│ ├── Loss.h
│ ├── Metrics.h
│ ├── NeuralNetwork.h
│ ├── Neuron.h
│ ├── Optimizer.h
│ └── Random.h
├── src/ # implementations
│ ├── Activation.cpp
│ ├── Layer.cpp
│ ├── Loss.cpp
│ ├── Metrics.cpp
│ ├── NeuralNetwork.cpp
│ ├── Neuron.cpp
│ ├── Optimizer.cpp
│ └── Random.cpp
└── python/ # Python package
├── bindings.cpp # pybind11 bindings
├── example.py # Python example (XOR)
└── neuralnetwork/ # importable package
└── __init__.py
Table of contents
- Concepts
- Building
- C++ API reference
- Python API reference
- Examples
- How it works
- Tips & troubleshooting
Concepts
- Inputs / outputs are
std::vector<double>(Python:list[float]). A dataset isstd::vector<std::vector<double>>(Python:list[list[float]]). - A network is a sequence of fully-connected layers. Each layer contains neurons, each with a weight vector and a bias.
NeuralNetworkis constructed with the input size, the loss type, an optimizer (shared pointer in C++), and a learning rate. Layers are added withaddLayer()and materialized withbuild().- Forward pass:
z = W·x + b, thenoutput = activation(z)(softmax is applied across the whole layer). - Backward pass: gradients are computed via backpropagation. The loss gradient is propagated layer by layer; the softmax layer uses the exact Jacobian.
- Training:
trainSample()does a forward pass, a backward pass, then one optimizer update.trainBatch()averages gradients over the batch, then applies one update. - Weights are initialized randomly (He init for ReLU/LeakyReLU, Xavier otherwise); biases start at 0.
Building
Install from PyPI
pip install neuralnetwork-cpp
python3 -c "import neuralnetwork; print(neuralnetwork.__version__)"
Prebuilt wheels are provided for Linux, macOS, and Windows on Python 3.9–3.14. If no wheel matches your platform, pip builds the module from source, which requires a C++17 compiler (pybind11 is fetched automatically).
Build from source
Requirements: a C++17 compiler, CMake ≥ 3.14, and (for the Python module) Python 3 with a working compiler toolchain.
C++ (executable)
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build
./build/neural_network # runs main.cpp (quadratic regression demo)
Python module
Two ways:
1. Build with CMake (recommended if you do not have pip): the module is produced directly inside the package folder.
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build
# result: python/neuralnetwork/_core.cpython-<py>-<arch>.so
Then import from anywhere by putting the python/ directory on PYTHONPATH:
export PYTHONPATH="$PWD/python"
python3 -c "import neuralnetwork; print(neuralnetwork.__version__)"
2. pip install . (builds and installs the module, e.g. into a virtualenv):
pip install .
python3 -c "import neuralnetwork"
To skip the Python bindings during a CMake build:
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DBUILD_PYTHON_MODULE=OFF
C++ API reference
Everything lives in namespace nn. Include <NeuralNetwork.h> for the high-level API.
Random
Header: include/Random.h
Low-level random number helpers. All use one global, device-seeded std::mt19937.
| Function | Description |
|---|---|
static std::mt19937& Random::generator() |
Reference to the global seeded RNG. |
static double Random::uniform(double min, double max) |
Uniform double in [min, max). |
static double Random::gaussian(double mean, double stddev) |
Gaussian sample with given mean and stddev. |
double a = nn::Random::uniform(0.0, 1.0); // uniform [0,1)
double b = nn::Random::gaussian(0.0, 1.0); // standard normal
Activation
Header: include/Activation.h
enum class ActivationType { None, ReLU, LeakyReLU, Sigmoid, Tanh, Softmax };
None is the identity (linear) activation, used on the output layer for regression.
| Function | Description |
|---|---|
std::string activationName(ActivationType) |
Human-readable name. |
static double Activation::f(type, double x) |
Applies the activation to a single scalar. |
static double Activation::derivative(type, double z, double output) |
Derivative w.r.t. the pre-activation z; output is the activated value (used for Sigmoid/Tanh shortcuts). |
static std::vector<double> Activation::apply(type, const std::vector<double>& z) |
Element-wise activation, except Softmax which normalizes the whole vector. |
double s = nn::Activation::f(nn::ActivationType::Sigmoid, 0.0); // 0.5
double d = nn::Activation::derivative(nn::ActivationType::Sigmoid, 0.0, 0.5); // 0.25
auto probs = nn::Activation::apply(nn::ActivationType::Softmax, {1.0, 2.0, 3.0});
Neuron
Header: include/Neuron.h
Represents one unit: a weight vector + bias. During the forward pass it stores its preactivation (z), output, and during backprop its delta and gradients.
| Member | Type | Description |
|---|---|---|
weights |
std::vector<double> |
Synaptic weights. |
weightGradients |
std::vector<double> |
Accumulated dLoss/dWeight. |
bias |
double |
Bias term. |
biasGradient |
double |
Accumulated dLoss/dBias. |
preactivation |
double |
z = W·x + b from the last forward pass. |
output |
double |
Activated value from the last forward pass. |
delta |
double |
dLoss/dz from the last backward pass. |
activation |
ActivationType |
Activation used by this neuron. |
velocityW / velocityB |
vector / double | Momentum state. |
mW, vW, mB, vB |
vector / doubles | Adam moment estimates. |
timestep |
size_t |
Adam bias-correction step counter. |
| Member function | Description |
|---|---|
Neuron(size_t numInputs, ActivationType act) |
Creates weights (He/Xavier initialized), bias = 0. |
double forward(const std::vector<double>& inputs) |
Computes z and stores preactivation / output; returns output. |
double derivative() const |
Activation::derivative(activation, preactivation, output). |
void zeroGradients() |
Resets weight/bias gradients to 0. |
void applyGradients(Optimizer& opt, double lr) |
Delegates one update step to the optimizer. |
nn::Neuron n(3, nn::ActivationType::ReLU); // 3 inputs
double out = n.forward({0.5, -1.0, 2.0});
n.weightGradients[0] = 0.01; // filled by backprop normally
Layer
Header: include/Layer.h
A dense layer owning a std::vector<Neuron>.
| Member function | Description |
|---|---|
Layer(size_t inputSize, size_t numNeurons, ActivationType act) |
Builds the layer's neurons. |
std::vector<double> forward(const std::vector<double>& input) |
Computes outputs (softmax is applied over the whole layer) and stores inputs / outputs. |
std::vector<double> backward(const std::vector<double>& outputGradients, bool accumulateGradients) |
Computes each neuron's delta, accumulates weightGradients/biasGradient, and returns the gradients w.r.t. the layer input. |
void zeroGradients() |
Zeroes every neuron's gradients. |
Public fields: neurons, inputs, outputs, activation.
nn::Layer hidden(2, 4, nn::ActivationType::Tanh); // 2 inputs -> 4 tanh units
auto out = hidden.forward({0.3, -0.7});
auto inGrad = hidden.backward({0.1, 0.2, -0.1, 0.3}, false);
Loss
Header: include/Loss.h
enum class LossType { MSE, CrossEntropy, BinaryCrossEntropy };
| Function | Description |
|---|---|
std::string lossName(LossType) |
Human-readable name. |
static double Loss::compute(type, const std::vector<double>& prediction, const std::vector<double>& target) |
Scalar loss value. |
static std::vector<double> Loss::gradient(type, prediction, target) |
dLoss/dprediction per output element. |
Formulas (inputs have n elements, p = prediction, t = target):
- MSE:
(1/n) · Σ(pᵢ − tᵢ)² - CrossEntropy:
−Σ tᵢ·log(pᵢ) - BinaryCrossEntropy:
−(1/n) · Σ [tᵢ·log(pᵢ) + (1−tᵢ)·log(1−pᵢ)]
double l = nn::Loss::compute(nn::LossType::MSE, {0.8, 0.2}, {1.0, 0.0});
auto g = nn::Loss::gradient(nn::LossType::MSE, {0.8, 0.2}, {1.0, 0.0});
Metrics
Header: include/Metrics.h
| Function | Description |
|---|---|
static size_t Metrics::predictedClass(const std::vector<double>& output) |
Index of the largest output (argmax). |
static double Metrics::accuracy(prediction, target) |
1.0 if correct else 0.0; single-output vectors are thresholded at 0.5, multi-output use argmax. |
static double Metrics::accuracy(predictions, targets) |
Mean accuracy over a dataset. |
double acc = nn::Metrics::accuracy({{0.9, 0.1}, {0.2, 0.8}}, {{1, 0}, {0, 1}}); // 1.0
Optimizer
Header: include/Optimizer.h
Abstract base Optimizer with virtual std::string name() const and virtual void update(Neuron&, double learningRate). Neural networks hold the optimizer as a std::shared_ptr<Optimizer>.
| Class | Constructor | Update rule |
|---|---|---|
SGD |
SGD() |
w ← w − lr·grad |
MomentumSGD |
MomentumSGD(double momentum = 0.9) |
v ← μ·v + lr·grad; w ← w − v |
Adam |
Adam(double beta1 = 0.9, double beta2 = 0.999, double epsilon = 1e-8) |
Adaptive moment estimation with bias correction |
auto opt = std::make_shared<nn::Adam>(0.9, 0.999, 1e-8);
std::cout << opt->name() << "\n"; // "Adam"
NeuralNetwork
Header: include/NeuralNetwork.h
struct EvaluationResult {
double loss;
double accuracy;
};
| Member | Description |
|---|---|
NeuralNetwork(size_t inputSize, LossType lossType, std::shared_ptr<Optimizer> optimizer, double learningRate) |
Constructs an empty network. |
void addLayer(size_t units, ActivationType activation) |
Registers a hidden/output layer configuration. |
void build() |
Materializes all layers (must be called before any forward/train). |
std::vector<double> forward(const std::vector<double>& input) |
Runs a forward pass, returns the output vector. |
std::vector<double> predict(const std::vector<double>& input) |
Same as forward (convenience alias). |
double backprop(const std::vector<double>& target) |
Runs backward pass for the most recent forward pass; returns the loss. Does not update weights. |
double trainSample(const std::vector<double>& input, const std::vector<double>& target) |
Forward + backward + one optimizer update; returns loss. |
double trainBatch(const std::vector<std::vector<double>>& inputs, const std::vector<std::vector<double>>& targets) |
Accumulates gradients over the batch (averaged), applies one optimizer update; returns mean loss. |
EvaluationResult evaluate(const std::vector<std::vector<double>>& inputs, const std::vector<std::vector<double>>& targets) |
Mean loss + classification accuracy over a dataset (no weight updates). |
size_t inputSize() const |
Configured input dimension. |
size_t layerCount() const |
Number of materialized layers. |
const std::vector<Layer>& layers() const |
Read access to the materialized layers. |
Usage pattern:
#include "NeuralNetwork.h"
using namespace nn;
NeuralNetwork net(2, LossType::MSE, std::make_shared<Adam>(), 0.1);
net.addLayer(4, ActivationType::Tanh); // hidden
net.addLayer(1, ActivationType::Sigmoid); // output
net.build();
// single sample training
for (int e = 0; e < 1000; ++e)
net.trainSample({0, 1}, {1});
// batch training
std::vector<std::vector<double>> X = {{0,0},{0,1},{1,0},{1,1}};
std::vector<std::vector<double>> Y = {{0},{1},{1},{0}};
double loss = net.trainBatch(X, Y); // mean loss over the batch
// evaluation
EvaluationResult res = net.evaluate(X, Y);
std::cout << "loss=" << res.loss << " acc=" << res.accuracy << "\n";
// inference
auto out = net.predict({1, 0});
Note:
backprop()uses the inputs/outputs cached by the most recentforward()call — callforward()(ortrainSample) immediately before it.
Python API reference
Import the package:
import neuralnetwork as nn
The names map 1:1 to the C++ API (snake_case for methods, and ActivationType.None is renamed Linear because None is a Python keyword).
Enums
nn.ActivationType.Linear # identity (was C++ None)
nn.ActivationType.ReLU
nn.ActivationType.LeakyReLU
nn.ActivationType.Sigmoid
nn.ActivationType.Tanh
nn.ActivationType.Softmax
nn.LossType.MSE
nn.LossType.CrossEntropy
nn.LossType.BinaryCrossEntropy
Optimizers
nn.SGD() # plain SGD
nn.MomentumSGD(momentum=0.9) # momentum SGD
nn.Adam(beta1=0.9, beta2=0.999, epsilon=1e-8) # Adam
All expose .name() returning e.g. "Adam".
NeuralNetwork
| Python method | C++ equivalent | Description |
|---|---|---|
nn.NeuralNetwork(input_size, loss_type, optimizer, learning_rate) |
constructor | Create network. |
net.add_layer(units, activation) |
addLayer |
Register a layer. |
net.build() |
build |
Materialize layers. |
net.forward(input) |
forward |
Forward pass, returns list[float]. |
net.predict(input) |
predict |
Inference alias. |
net.backprop(target) |
backprop |
Backward pass for last forward; returns loss. |
net.train_sample(input, target) |
trainSample |
One sample update; returns loss. |
net.train_batch(inputs, targets) |
trainBatch |
Batch update; returns mean loss. |
net.evaluate(inputs, targets) |
evaluate |
Returns EvaluationResult. |
net.input_size() |
inputSize |
Input dimension. |
net.layer_count() |
layerCount |
Number of layers. |
EvaluationResult has read-only fields .loss and .accuracy and a repr.
Metrics
nn.Metrics.predicted_class(output) # argmax index
nn.Metrics.accuracy(prediction, target) # 0.0 or 1.0
nn.Metrics.accuracy(predictions, targets) # mean accuracy
Minimal Python usage:
import neuralnetwork as nn
net = nn.NeuralNetwork(2, nn.LossType.MSE, nn.Adam(), 0.1)
net.add_layer(4, nn.ActivationType.Tanh)
net.add_layer(1, nn.ActivationType.Sigmoid)
net.build()
for _ in range(1000):
net.train_sample([0, 1], [1])
pred = net.predict([0, 1]) # [0.998...]
Examples
C++: XOR
#include <iostream>
#include "NeuralNetwork.h"
int main() {
using namespace nn;
NeuralNetwork net(2, LossType::MSE, std::make_shared<Adam>(), 0.1);
net.addLayer(4, ActivationType::Tanh);
net.addLayer(1, ActivationType::Sigmoid);
net.build();
const std::vector<std::vector<double>> X = {{0,0},{0,1},{1,0},{1,1}};
const std::vector<std::vector<double>> Y = {{0},{1},{1},{0}};
for (int e = 1; e <= 2000; ++e) {
double loss = 0.0;
for (size_t i = 0; i < X.size(); ++i) loss += net.trainSample(X[i], Y[i]);
if (e % 500 == 0)
std::cout << "epoch " << e << " loss=" << loss / 4 << "\n";
}
for (size_t i = 0; i < X.size(); ++i)
std::cout << X[i][0] << " XOR " << X[i][1] << " = "
<< (net.predict(X[i])[0] > 0.5 ? 1 : 0) << "\n";
return 0;
}
C++: multi-class classification
Softmax output + CrossEntropy loss on a 3-class problem.
#include <iostream>
#include "NeuralNetwork.h"
int main() {
using namespace nn;
NeuralNetwork net(2, LossType::CrossEntropy, std::make_shared<Adam>(), 0.01);
net.addLayer(16, ActivationType::ReLU);
net.addLayer(3, ActivationType::Softmax);
net.build();
// Points near (1,1) -> class 0; near (-1,1) -> class 1; near (-1,-1) -> class 2
const std::vector<std::vector<double>> X = {
{1.1, 0.9}, {0.9, 1.0}, {1.0, 1.1}, // class 0
{-1.1, 1.0}, {-0.9, 0.9}, {-1.0, 1.1}, // class 1
{-1.0, -1.1}, {-1.1, -0.9}, {-0.9, -1.0}}; // class 2
const std::vector<std::vector<double>> Y = {
{1,0,0}, {1,0,0}, {1,0,0},
{0,1,0}, {0,1,0}, {0,1,0},
{0,0,1}, {0,0,1}, {0,0,1}};
for (int e = 1; e <= 500; ++e) {
double loss = 0.0;
for (size_t i = 0; i < X.size(); ++i) loss += net.trainSample(X[i], Y[i]);
if (e % 100 == 0)
std::cout << "epoch " << e << " loss=" << loss / X.size() << "\n";
}
auto res = net.evaluate(X, Y);
std::cout << "test accuracy = " << res.accuracy << "\n";
return 0;
}
Python: XOR
Run python3 python/example.py, or:
import neuralnetwork as nn
net = nn.NeuralNetwork(2, nn.LossType.MSE, nn.Adam(), 0.1)
net.add_layer(4, nn.ActivationType.Tanh)
net.add_layer(1, nn.ActivationType.Sigmoid)
net.build()
X = [[0, 0], [0, 1], [1, 0], [1, 1]]
Y = [[0], [1], [1], [0]]
for epoch in range(1, 2001):
loss = sum(net.train_sample(X[i], Y[i]) for i in range(4)) / 4
if epoch % 500 == 0:
res = net.evaluate(X, Y)
print(f"epoch {epoch:4d} loss = {loss:.6f} accuracy = {res.accuracy:.0%}")
print([round(net.predict(x)[0], 4) for x in X])
# e.g. [0.0008, 0.999, 0.999, 0.0009]
Python: regression
Normalize inputs to keep activations unsaturated (the hidden units are ReLU here).
import random
import neuralnetwork as nn
random.seed(1)
X = [[random.uniform(-1, 1)] for _ in range(2000)]
Y = [[x[0] * x[0] + 3 * x[0] - 2] for x in X] # targets in [-4, 2]
net = nn.NeuralNetwork(1, nn.LossType.MSE, nn.Adam(), 0.01)
net.add_layer(32, nn.ActivationType.ReLU)
net.add_layer(1, nn.ActivationType.Linear)
net.build()
for epoch in range(1, 51):
loss = 0.0
for start in range(0, 2000, 128):
loss += net.train_batch(X[start:start + 128], Y[start:start + 128])
if epoch % 10 == 0:
print(f"epoch {epoch:3d} loss = {loss / 16:.5f}")
print(round(net.predict([0.5])[0], 4)) # ~ -0.25 (true: 0.25 + 1.5 - 2)
Python: multi-class classification
import neuralnetwork as nn
net = nn.NeuralNetwork(2, nn.LossType.CrossEntropy, nn.Adam(), 0.01)
net.add_layer(16, nn.ActivationType.ReLU)
net.add_layer(3, nn.ActivationType.Softmax)
net.build()
X = [[1.1, 0.9], [0.9, 1.0], [-1.1, 1.0], [-0.9, 0.9], [-1.0, -1.1], [-1.1, -0.9]]
Y = [[1, 0, 0], [1, 0, 0], [0, 1, 0], [0, 1, 0], [0, 0, 1], [0, 0, 1]]
for _ in range(300):
for i in range(len(X)):
net.train_sample(X[i], Y[i])
res = net.evaluate(X, Y)
print(f"accuracy: {res.accuracy:.0%}") # 100%
print(net.predict([1.05, 1.05])) # e.g. [0.97, 0.02, 0.01]
How it works
Forward pass per neuron:
z = b + Σᵢ wᵢ·xᵢ
a = activation(z) (softmax is computed across the layer)
Backward pass — the chain rule in reverse:
δ_output = dLoss/doutputfromLoss::gradient.- Each layer converts that into per-neuron
delta = dLoss/dz:- element-wise activations:
delta = dLoss/da · activation′(z) - softmax:
delta = aᵢ · (dLoss/daᵢ − Σⱼ dLoss/daⱼ·aⱼ)(exact Jacobian)
- element-wise activations:
- Gradients are accumulated per neuron:
∂Loss/∂wᵢ = delta·xᵢ,∂Loss/∂b = delta. - The input gradient
∂Loss/∂xᵢ = Σ delta·wᵢis passed to the previous layer.
Weight initialization — He for ReLU/LeakyReLU (σ = √(2/fan_in)), Xavier otherwise (σ = √(1/fan_in)); biases are 0.
Optimizer updates — see the Optimizer table. Adam keeps per-parameter first/second moments with bias correction.
Tips & troubleshooting
- Call
build()afteraddLayer()and before any forward/train/evaluate call. - Input sizes must match
input_size; mismatches throwstd::runtime_error(C++) /RuntimeError(Python). - Regression: use
MSE+ActivationType.Linearon the output layer, and normalize inputs (and often targets) so activations do not saturate. - Multi-class: use
CrossEntropy+Softmaxoutput; targets are one-hot vectors. - Binary classification:
BinaryCrossEntropy+Sigmoidoutput. - Slow convergence or saturation: reduce the learning rate, normalize inputs to roughly
[-1, 1], or prefer ReLU hidden layers. - Python keyword clash: the identity activation is
nn.ActivationType.Linearin Python, butActivationType::Nonein C++. - Re-import after rebuild: if you rebuild the module, restart the Python process — the extension is loaded once.
Release files for neuralnetwork-cpp 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| neuralnetwork_cpp-0.1.1.tar.gz | 25.7 kB | Details |
Built distributions (wheels)
Total release size: 16.5 MB
Release files / neuralnetwork_cpp-0.1.1.tar.gz
| Download URL | neuralnetwork_cpp-0.1.1.tar.gz |
|---|---|
| Size | 25.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
bac7be7c188f5cb922408c26c93695ce032f7f118e21a328d0412661383e5bf8
|
|
BLAKE2b-256 checksum How to use checksums |
889a6c0d15e093c88906e3153a9713453c43afd2fbb99d8a89a14faf1be2d40b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / neuralnetwork_cpp-0.1.1-cp313-cp313-win_amd64.whl
| Download URL | neuralnetwork_cpp-0.1.1-cp313-cp313-win_amd64.whl |
|---|---|
| Size | 148.1 kB |
| Tags | CPython 3.13 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
b88ee70c412e8c43d79b4e5339d2bc575f01f7010af98b374cd00d2cc3748431
|
|
BLAKE2b-256 checksum How to use checksums |
c0003bf04ebf4c03257f17f573671ddc69d37f14cacf5768efe74f9d6f1134b0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / neuralnetwork_cpp-0.1.1-cp313-cp313-win32.whl
| Download URL | neuralnetwork_cpp-0.1.1-cp313-cp313-win32.whl |
|---|---|
| Size | 119.0 kB |
| Tags | CPython 3.13 Windows x86-32 |
|
SHA-256 checksum How to use checksums |
f34a0ef09a22a2dc93495d5ccfdee393e0b22f3d55277aecb6ae62a3d57d9939
|
|
BLAKE2b-256 checksum How to use checksums |
e123823e514ac989326860156c9156e7371da5b447f21e25e9a407aa59412b02
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / neuralnetwork_cpp-0.1.1-cp313-cp313-musllinux_1_2_x86_64.whl
| Download URL | neuralnetwork_cpp-0.1.1-cp313-cp313-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 1.2 MB |
| Tags | CPython 3.13 Linux musl 1.2+ x86-64 |
|
SHA-256 checksum How to use checksums |
c2f67596ec0f26de4e35839aa32a0f561e90d5bf69600ce81d28d27944ef92b6
|
|
BLAKE2b-256 checksum How to use checksums |
bb14ca4ff5f35ac7d102356119883314363800da12454debf189af6efb31fde9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / neuralnetwork_cpp-0.1.1-cp313-cp313-musllinux_1_2_i686.whl
| Download URL | neuralnetwork_cpp-0.1.1-cp313-cp313-musllinux_1_2_i686.whl |
|---|---|
| Size | 1.3 MB |
| Tags | CPython 3.13 Linux musl 1.2+ x86-32 |
|
SHA-256 checksum How to use checksums |
5bc219393629ee6116ea1785c7e23c8a47b529335029cbffbaaa7609e6d1f979
|
|
BLAKE2b-256 checksum How to use checksums |
808c896c83e9d46b43e3c6fb0e437a106ee1afa1d4f8ea2e6cef6e17172f735d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / neuralnetwork_cpp-0.1.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | neuralnetwork_cpp-0.1.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 206.3 kB |
| Tags | CPython 3.13 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
7adaaff1daa68ff6a63da3195aaf939f77e1339af2e1a6ceb5342de8a16529e7
|
|
BLAKE2b-256 checksum How to use checksums |
b6a651d4a5d8f6ba586749de86fa1d41d153284f44a8e92e318a1649aeb91c9b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / neuralnetwork_cpp-0.1.1-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl
| Download URL | neuralnetwork_cpp-0.1.1-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl |
|---|---|
| Size | 215.1 kB |
| Tags | CPython 3.13 Linux glibc 2.17+ x86-32 |
|
SHA-256 checksum How to use checksums |
b4190b54e4b52ffe399db33e3d675336ac2f148405b8b8a88df0f5e6d450ef73
|
|
BLAKE2b-256 checksum How to use checksums |
fc27e10011f39453404a62ce0aeb1e9fc38a30cd162001b6df3219275a79073f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / neuralnetwork_cpp-0.1.1-cp313-cp313-macosx_11_0_arm64.whl
| Download URL | neuralnetwork_cpp-0.1.1-cp313-cp313-macosx_11_0_arm64.whl |
|---|---|
| Size | 160.1 kB |
| Tags | CPython 3.13 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
2c415031af89debdd5d3d6389cb22ffd5b818da11f9b7831ac9e21cef63c6135
|
|
BLAKE2b-256 checksum How to use checksums |
98ba448af506038c9411e7e5903aca76696a2075ff641dd88978992a1dc7e461
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / neuralnetwork_cpp-0.1.1-cp312-cp312-win_amd64.whl
| Download URL | neuralnetwork_cpp-0.1.1-cp312-cp312-win_amd64.whl |
|---|---|
| Size | 148.1 kB |
| Tags | CPython 3.12 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
64f3a3fe754defd7168ebe8f9d9c9c0421cf58f06707570394e63643e00c8221
|
|
BLAKE2b-256 checksum How to use checksums |
db3e7d10bbd19a8984ad2db50e2a6220fe3da344073c20b80e90aaf9520921ad
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / neuralnetwork_cpp-0.1.1-cp312-cp312-win32.whl
| Download URL | neuralnetwork_cpp-0.1.1-cp312-cp312-win32.whl |
|---|---|
| Size | 119.0 kB |
| Tags | CPython 3.12 Windows x86-32 |
|
SHA-256 checksum How to use checksums |
d580bc3692404d49c35c631fd7f64e7cafa0820ebd2e519beec728f07444a287
|
|
BLAKE2b-256 checksum How to use checksums |
b0b32129761fe453e5d62a8888536bdd3fb802790298019075e46fc51148fc53
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / neuralnetwork_cpp-0.1.1-cp312-cp312-musllinux_1_2_x86_64.whl
| Download URL | neuralnetwork_cpp-0.1.1-cp312-cp312-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 1.2 MB |
| Tags | CPython 3.12 Linux musl 1.2+ x86-64 |
|
SHA-256 checksum How to use checksums |
20be76f28831fcaac4a8f5abe5e334750dc7250760a04d7709639a593c55ab8c
|
|
BLAKE2b-256 checksum How to use checksums |
e3c16dad08f5379a7e0c5fcec3fbe962fe036d70845b08d535e4580456e75f02
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / neuralnetwork_cpp-0.1.1-cp312-cp312-musllinux_1_2_i686.whl
| Download URL | neuralnetwork_cpp-0.1.1-cp312-cp312-musllinux_1_2_i686.whl |
|---|---|
| Size | 1.3 MB |
| Tags | CPython 3.12 Linux musl 1.2+ x86-32 |
|
SHA-256 checksum How to use checksums |
7a81a4331a974de53d94c6585e3fb24e663b260d1659d200f94ea5282751e4fe
|
|
BLAKE2b-256 checksum How to use checksums |
c2a6a648ddad1e86d0be55f0e95e807347d8fbca8d6d896eab870cbc03a36112
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / neuralnetwork_cpp-0.1.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | neuralnetwork_cpp-0.1.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 206.4 kB |
| Tags | CPython 3.12 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
2365fbd79f16c819a5fc91b074414d1c1e7291103b462c8c74d2d41d1a226b36
|
|
BLAKE2b-256 checksum How to use checksums |
2e92c03261c3caad126b8be99d7bbb591473bba5c387385416acaa9f77fae809
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / neuralnetwork_cpp-0.1.1-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl
| Download URL | neuralnetwork_cpp-0.1.1-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl |
|---|---|
| Size | 215.6 kB |
| Tags | CPython 3.12 Linux glibc 2.17+ x86-32 |
|
SHA-256 checksum How to use checksums |
ec91e740f571220995ff46c14b43e902217088d45c03ada53f08579fb7804afd
|
|
BLAKE2b-256 checksum How to use checksums |
9d7c1534b0302922cbc02235ec1b08cb64801c4dcbddba897fcf3e2987ccfce7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / neuralnetwork_cpp-0.1.1-cp312-cp312-macosx_11_0_arm64.whl
| Download URL | neuralnetwork_cpp-0.1.1-cp312-cp312-macosx_11_0_arm64.whl |
|---|---|
| Size | 160.1 kB |
| Tags | CPython 3.12 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
5644b2d4d94be0da11e2a4ca8a85c5ec561310aaad2d4634114a626002f22f09
|
|
BLAKE2b-256 checksum How to use checksums |
81e8157142d0c3224ae3063a254718de911f5ac6bed4da253bec1c6a2c4ff75c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / neuralnetwork_cpp-0.1.1-cp311-cp311-win_amd64.whl
| Download URL | neuralnetwork_cpp-0.1.1-cp311-cp311-win_amd64.whl |
|---|---|
| Size | 145.4 kB |
| Tags | CPython 3.11 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
573dc2707b564e35455d472d518b45632e47e568fc58e3f2098185d2d433e58b
|
|
BLAKE2b-256 checksum How to use checksums |
b85107855f98005c67ecba6a81c8de08ae74debdf4682834961d7de03c5825c4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / neuralnetwork_cpp-0.1.1-cp311-cp311-win32.whl
| Download URL | neuralnetwork_cpp-0.1.1-cp311-cp311-win32.whl |
|---|---|
| Size | 118.0 kB |
| Tags | CPython 3.11 Windows x86-32 |
|
SHA-256 checksum How to use checksums |
edf14738a0ab0e161e2661902b3145c59ac6f0547e476de9ea4f8ff1af3a7f77
|
|
BLAKE2b-256 checksum How to use checksums |
9db61c58bd8247b2c05c03e44121851f848aa9fbbffb476f88569b1f6a8b3013
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / neuralnetwork_cpp-0.1.1-cp311-cp311-musllinux_1_2_x86_64.whl
| Download URL | neuralnetwork_cpp-0.1.1-cp311-cp311-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 1.2 MB |
| Tags | CPython 3.11 Linux musl 1.2+ x86-64 |
|
SHA-256 checksum How to use checksums |
ec245eb4b0ee5b769c978af720ab9b0fff491938ffa3d7050c523c4de2f0298d
|
|
BLAKE2b-256 checksum How to use checksums |
2646da4487ba1ceddaaf5b0ec5646a71ea7db7b6ce1297343842ea43eb5f4b8b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / neuralnetwork_cpp-0.1.1-cp311-cp311-musllinux_1_2_i686.whl
| Download URL | neuralnetwork_cpp-0.1.1-cp311-cp311-musllinux_1_2_i686.whl |
|---|---|
| Size | 1.3 MB |
| Tags | CPython 3.11 Linux musl 1.2+ x86-32 |
|
SHA-256 checksum How to use checksums |
26e8b2712cf3e7de3c4326f6a069b6ba04c994fe7f6f96599d6b57024f1bc6f0
|
|
BLAKE2b-256 checksum How to use checksums |
8f356e52b0d766b1a4c2e51318d0080304f2c1e0cbfc95a6e11c4291c60c1544
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / neuralnetwork_cpp-0.1.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | neuralnetwork_cpp-0.1.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 207.0 kB |
| Tags | CPython 3.11 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
d9b4d17695031e83672ab7204d758efe09f85c3a02e761e0e62143532eadd8b0
|
|
BLAKE2b-256 checksum How to use checksums |
c3a0c98ff54b11efa3529ec67eee92d787af37afe955458d662e06c590522bd2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / neuralnetwork_cpp-0.1.1-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl
| Download URL | neuralnetwork_cpp-0.1.1-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl |
|---|---|
| Size | 215.8 kB |
| Tags | CPython 3.11 Linux glibc 2.17+ x86-32 |
|
SHA-256 checksum How to use checksums |
f2ccb85e158728c3beb5b5e1d7b869269ad32ae309eeaa49ef0beb849d965fc8
|
|
BLAKE2b-256 checksum How to use checksums |
58cb035789227ff0c145d36cfceb57cd189410e729422dfab30729b1c5c28acf
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / neuralnetwork_cpp-0.1.1-cp311-cp311-macosx_11_0_arm64.whl
| Download URL | neuralnetwork_cpp-0.1.1-cp311-cp311-macosx_11_0_arm64.whl |
|---|---|
| Size | 158.1 kB |
| Tags | CPython 3.11 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
42c85ec96a3f5fa6c0dc8c965c4c10e053cc1977a9fe4e4d31ea2518b5f34232
|
|
BLAKE2b-256 checksum How to use checksums |
ddeb4b429772ca90e9ab7adf706603496eeddb18550e3eda576555a90dcf7302
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / neuralnetwork_cpp-0.1.1-cp310-cp310-win_amd64.whl
| Download URL | neuralnetwork_cpp-0.1.1-cp310-cp310-win_amd64.whl |
|---|---|
| Size | 144.2 kB |
| Tags | CPython 3.10 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
8221676a57c4db9e2c87cc5459a4e6e71a908e29c0bf6a7e85d91c07a63377fd
|
|
BLAKE2b-256 checksum How to use checksums |
f6cbd7de82cf2c4ddd42af806a5c1b3b0c113713e8781a584634e1a16ae187a9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / neuralnetwork_cpp-0.1.1-cp310-cp310-win32.whl
| Download URL | neuralnetwork_cpp-0.1.1-cp310-cp310-win32.whl |
|---|---|
| Size | 116.8 kB |
| Tags | CPython 3.10 Windows x86-32 |
|
SHA-256 checksum How to use checksums |
30e0bb15fa81583422ea1b97c7105e30c8ddb04b9735deeb9a2f37fff79fba3c
|
|
BLAKE2b-256 checksum How to use checksums |
5a73b0d5a5131eb8599de6f9638704e49d98c9078ce20e647340641d394c7723
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / neuralnetwork_cpp-0.1.1-cp310-cp310-musllinux_1_2_x86_64.whl
| Download URL | neuralnetwork_cpp-0.1.1-cp310-cp310-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 1.2 MB |
| Tags | CPython 3.10 Linux musl 1.2+ x86-64 |
|
SHA-256 checksum How to use checksums |
43faae4f61f0333cb2e2dbe7c8f190338f65992f41dbe2806c8be492ff9c110e
|
|
BLAKE2b-256 checksum How to use checksums |
50fdbc4d66d1fe9fbdc25e6d5169210f17d698848c6c7e0e56ff76f3cb9a4fdd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / neuralnetwork_cpp-0.1.1-cp310-cp310-musllinux_1_2_i686.whl
| Download URL | neuralnetwork_cpp-0.1.1-cp310-cp310-musllinux_1_2_i686.whl |
|---|---|
| Size | 1.3 MB |
| Tags | CPython 3.10 Linux musl 1.2+ x86-32 |
|
SHA-256 checksum How to use checksums |
c564359e15e1d6e01287ecbd2386aa42edceb93e40ecc364fce54cc5a0faf93e
|
|
BLAKE2b-256 checksum How to use checksums |
cd19a8685a89275a220b388db53dc200019e5de850aa96fdbcb7999d195064f0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / neuralnetwork_cpp-0.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | neuralnetwork_cpp-0.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 205.5 kB |
| Tags | CPython 3.10 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
b623ce312a3a3cb1907c0b73d081bff8b2c26b4eac7ea5aa45e5b21602e8a14f
|
|
BLAKE2b-256 checksum How to use checksums |
f9f1d78e54311e9a3394e3808ddde3e47842f99dd9eb1dd52ca222c4b8363df8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / neuralnetwork_cpp-0.1.1-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl
| Download URL | neuralnetwork_cpp-0.1.1-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl |
|---|---|
| Size | 215.1 kB |
| Tags | CPython 3.10 Linux glibc 2.17+ x86-32 |
|
SHA-256 checksum How to use checksums |
223fe9c7efd139ee0a15726d7c5ca85b3e41010e933abd6f19b5573a5d1850a1
|
|
BLAKE2b-256 checksum How to use checksums |
ea40b137d7bae6e4933a8abfe7d75bd31b1f55156a2771911d32be2b686b7a31
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / neuralnetwork_cpp-0.1.1-cp310-cp310-macosx_11_0_arm64.whl
| Download URL | neuralnetwork_cpp-0.1.1-cp310-cp310-macosx_11_0_arm64.whl |
|---|---|
| Size | 156.8 kB |
| Tags | CPython 3.10 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
e79927a6491b7e7b4dd9e987c145bd2f55a735c91b1ee8959cac6428292a454e
|
|
BLAKE2b-256 checksum How to use checksums |
ac0b33cfda5626cce0b1a479fa99c3ea170410ebce97b1918edb6febf7557b71
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / neuralnetwork_cpp-0.1.1-cp39-cp39-win_amd64.whl
| Download URL | neuralnetwork_cpp-0.1.1-cp39-cp39-win_amd64.whl |
|---|---|
| Size | 144.4 kB |
| Tags | CPython 3.9 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
00376171166bd815893d1a4d28c3aba2470317844fefc59360d89b6485c84669
|
|
BLAKE2b-256 checksum How to use checksums |
b03c364decf6718f44e1ab58b40d33d87dc48ad38a7af8a2297fafac56f13810
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / neuralnetwork_cpp-0.1.1-cp39-cp39-win32.whl
| Download URL | neuralnetwork_cpp-0.1.1-cp39-cp39-win32.whl |
|---|---|
| Size | 116.9 kB |
| Tags | CPython 3.9 Windows x86-32 |
|
SHA-256 checksum How to use checksums |
249c202fb6503e4404462c158b837520f76e1100455c4dbe0dcc9ff4637851d0
|
|
BLAKE2b-256 checksum How to use checksums |
c0f61ca6d6e8a25609cc6d7dff4cfdad8bd64303fc19a428f71775c489841869
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / neuralnetwork_cpp-0.1.1-cp39-cp39-musllinux_1_2_x86_64.whl
| Download URL | neuralnetwork_cpp-0.1.1-cp39-cp39-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 1.2 MB |
| Tags | CPython 3.9 Linux musl 1.2+ x86-64 |
|
SHA-256 checksum How to use checksums |
423687ee6b834298664f5a6ef1076a7dd5d416172e3b22e1b943ed9e5a4f1eca
|
|
BLAKE2b-256 checksum How to use checksums |
f08d6b17d1eac2e1e25881e2a50f473e0ef96bea899a108eaad48c75a5769518
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / neuralnetwork_cpp-0.1.1-cp39-cp39-musllinux_1_2_i686.whl
| Download URL | neuralnetwork_cpp-0.1.1-cp39-cp39-musllinux_1_2_i686.whl |
|---|---|
| Size | 1.3 MB |
| Tags | CPython 3.9 Linux musl 1.2+ x86-32 |
|
SHA-256 checksum How to use checksums |
8fec3981799656cc7e5f5d1c7ac0e8d9d923f2c17afb18d4c1c867442d4ee06d
|
|
BLAKE2b-256 checksum How to use checksums |
e6a0694bce25de99d4167303658a44d577381894d471796422e161f7a021875a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / neuralnetwork_cpp-0.1.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | neuralnetwork_cpp-0.1.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 205.8 kB |
| Tags | CPython 3.9 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
18920bb40f46ad09870bfe21c2c4f79dae69c112b7fefe3374815cdfaff646ad
|
|
BLAKE2b-256 checksum How to use checksums |
c8f25d2dc051dc0caea84c08fc8e95c8e91ddb54739f1d3e155f9efadf1f77e3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / neuralnetwork_cpp-0.1.1-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl
| Download URL | neuralnetwork_cpp-0.1.1-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl |
|---|---|
| Size | 215.4 kB |
| Tags | CPython 3.9 Linux glibc 2.17+ x86-32 |
|
SHA-256 checksum How to use checksums |
0f8eed4599faab92545bbbfef488c1678c2d2490638e28bf9202ddd694a8063f
|
|
BLAKE2b-256 checksum How to use checksums |
be7949c05bec5d5d1b18589c71668db8ef69de11b9565a84f77be97171bbd8be
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / neuralnetwork_cpp-0.1.1-cp39-cp39-macosx_11_0_arm64.whl
| Download URL | neuralnetwork_cpp-0.1.1-cp39-cp39-macosx_11_0_arm64.whl |
|---|---|
| Size | 157.0 kB |
| Tags | CPython 3.9 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
4edceae3d01b58112e719099a3e44ac41cb6ec34248e808960ed8637ea22e0c7
|
|
BLAKE2b-256 checksum How to use checksums |
e5f24ced07daecee4a1ae6f0407848851bf5654ac54124901b58d3e23562c75b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|