Open source. Open to your next idea. Explore EveryO 0.2.0

THE FRAMEWORK / DESIGNED FOR DEEPER UNDERSTANDING

A small core.
A lot to explore.

Build, train, inspect, and save neural networks. Follow the code through a complete stack written from scratch on NumPy.

NumPy foundationReadable PythonOptional integrations

01 / THE FOUNDATION

Start with a tensor.

Create arrays with float32 defaults, operate with broadcasting, and inspect shapes, dtypes, devices, and gradients.

  • Arithmetic, reductions, and matrix multiplication
  • Reshape, transpose, stack, and concatenate
  • Seeded random tensors for reproducible inputs
Read tensor.py
Python
import everyo as eo

x = eo.tensor([[1.0, 2.0]])
y = eo.tensor([[3.0], [4.0]])

print(eo.matmul(x, y))
# Tensor([[11.]], shape=(1, 1), dtype=float32)

02 / FOLLOW THE GRAPH

A backward pass.
A forward understanding.

Reverse-mode differentiation records operations and accumulates gradients through an iterative topological traversal.

Use requires_grad=True to start recording. Use eo.no_grad() for inference without building a gradient graph.

Inside the autograd engine
LIVE CONCEPT / AUTOGRAD 01
FORWARD PASS ↓
INPUTx 2.0
× x · x
OUTPUTy 4.0
∂y / ∂x 4.0← backward()
NumPy at the core.Every operation, readable.

03 / COMPOSABLE BY DESIGN

From a layer to a language experiment.

Combine familiar building blocks or subclass Module to write your own forward pass.

DENSE

The fundamentals

Linear layers, activations, dropout, normalization, and losses for small supervised experiments.

Explore modules
VISION

Convolution & pooling

Conv2D, MaxPool2D, and AvgPool2D. Images use NHWC layout; kernels follow TensorFlow’s layout.

Build a CNN
SEQUENCES

Recurrence & attention

RNN, LSTM, GRU, embeddings, positional encoding, multi-head attention, and transformer encoders.

Explore sequences

04 / THE EXPERIMENT LOOP

Train. Inspect.
Save. Repeat.

Use SGD or Adam, track metrics with Trainer, and keep experiments understandable from data to checkpoint.

  • Early stopping and learning-rate scheduling
  • Seeded loaders and train/test splits
  • Pickle-free .evo model archives
  • Headless charts and CSV/JSON history
Build a complete training loop
Training API · requires model and data
trainer = eo.Trainer(
    model,
    eo.Adam(model.parameters(), lr=0.01),
    eo.CrossEntropyLoss(),
    metrics=["accuracy"],
)

history = trainer.fit(train_loader, epochs=20)
eo.save(model, "model.evo")

05 / TRUST COMES WITH CONTEXT

Clear capabilities.
Explicit limits.

EveryO is built for learning, teaching, and small-scale experiments. It is not a production training runtime.

Component What to expect Evidence & limits
CPU / NumPy The standard local workflow Finite-difference gradient checks and project tests
TensorFlow Optional numerical reference Install separately for reference comparisons
CUDA Optional native kernels with CPU fallback Project CI has no GPU runtime validation. The standard Tensor path uses host buffers; the separate resident-buffer API is tested with a CPU stand-in
ONNX Export supported graphs Optional extra; validate unsupported operations and target runtime
Distributed CPU process-level training; experimental TCP process groups Multi-machine training has not been validated
Mixed precision autocast and GradScaler Autocast applies to matmul and conv2d

Read it. Run it. Make it yours.

Open the quickstart