Skip to content

Feature map

The menu of what just-makeit can do, and the one bundled example that shows each feature most clearly. This is a map, not a tutorial — scan for the thing you need, then open its example.

Every example is runnable end to end with:

just-makeit example <name>

It scaffolds fresh in a temp dir, builds, and runs its tests. Linked names have a walkthrough page; the rest you can read under src/just_makeit/examples/<name>/ or just run.

For a single guided build that touches many features at once, start with the feature tour. For composing objects out of objects, see the object-of-objects guide.


Object shapes — what step() looks like

Feature Example
Scalar processor (x -> y) FIR filter
Generator (void -> y) NCO tone
Consumer / sink (x -> void) Accumulator
Blockwise (T[] -> U[]) IQ file
Reader (no step(), custom methods) Stream chunker
Process a whole block (steps) Array processing

State and lifecycle

Feature Example
State variables with defaults Running stats
Mutable state (--mutable) NCO tone
Opaque heap state (create / destroy) Opaque counter
create / reset / destroy + heap field Delay line
Declarative TOML fragment (jm apply) Declarative scaffold
no_state / user-facing init-params Feature tour

Methods and outputs

Feature Example
Named execute methods with params Accumulator
Variable-length output Array processing
Per-call output array (out-type / out-divisor) Array processing
Second output array (multi-output) varargs_method
GIL release (nogil), pass-capacity kitchen_sink

Functions and properties

Feature Example
Module-level C function Module functions
Inline function (in the header) Module functions
Filesystem path argument (name:path) Extend command
Enum argument (name:enum:<ename>) Extend command
Raise on non-zero return (--check-return) Extend command
Writable property Feature tour
Field-backed property IQ file

Modules and linking

Feature Example
Multiple types in one module .so Filter module
External C library (find_package + link) NCO tone
Vendored C dep, depends_on, reexports kitchen_sink

Performance

Feature Example
JM_HOT / JM_FORCEINLINE annotations FIR filter
SIMD batch dispatch (JM_DEFINE_STEPS) Sliding correlator

Composing objects out of objects

Feature Example / guide
kind = "handle" — typed RAII resource class Composites
kind = "capsule" / kind = "composer" Object-of-objects guide

Streaming

Feature Example
streamablestream() / __iter__ stream_source
Blockwise streaming stream_blockwise
Async iteration stream_source_async
Re-framing a stream into fixed chunks Stream chunker

Applications and tooling

Feature Example
C exe / console script / PEP 723 from a component App targets
Full lifecycle (build, test, bench, docs) Full workflow
--pytest / --pytest-benchmark test styles pytest style