David Stadelmann 19a48951df feat: add s-shape wire style
Introduces a new "s-shape" wire style connecting two ports on opposite
cardinal sides (east<->west or north<->south) via 5 segments joined at
4 corners (u1-start, u1-end, u2-start, u2-end). The axis is auto-detected
from port anchors; when both endpoints share the same perpendicular
coordinate (single-block loopback) `s-ratio-mid` is reinterpreted as an
absolute signed offset so the crossbar can still be placed above or
below the endpoints.

Supports anchor-based placement via the `s-at-*` family of parameters
(s-at-1, s-at-mid, s-at-2) analogous to `zigzag-at` and `u-at`.
2026-10-22 00:32:08 +02:00
2026-10-22 00:32:08 +02:00
2026-10-22 00:32:04 +02:00
2026-10-22 00:32:08 +02:00
2024-05-16 21:34:50 +00:00
2026-10-22 00:32:08 +02:00
2026-10-21 23:39:59 +02:00
2026-07-04 01:35:35 +02:00

circuiteria

Circuiteria is a Typst package for drawing block circuit diagrams using the CeTZ package.

A platypus / Perry the Platypus meme made with colored rounded rectangles

Examples

Block diagram of a multi-cycle RISC-V FPGA processor
A bit of everything
Block diagram of a single-cycle RISC-V processor
Wires everywhere
Top-level block diagram of a single-cycle RISC-V processor Block diagram of a simple single-cycle RISC-V ALU
Groups Rotated

Note


These circuit layouts were copied from a digital design course given by prof. S. Zahno and recreated using this package

Click on the example image to jump to the code.

Usage

For more information, see the manual

To use this package, simply import circuiteria and call the circuit function:

#import "@preview/circuiteria:0.2.1"
#circuiteria.circuit({
  import circuiteria: *
  ...
})
S
Description
Drawing block circuits with Typst made easy, using CeTZ
Readme Apache-2.0
11 MiB
0 Stars 1 Watchers 0 Forks
Languages
Typst 99.8%
Just 0.2%