# smoltcp-rs/smoltcp

a smol tcp/ip stack

Repository: https://github.com/smoltcp-rs/smoltcp
Canonical: https://ross.abutalabs.com/products/smoltcp
Language: Rust
License: 0BSD
License Family: permissive
Topics: networking-stack, embedded
Last push: 2026-08-18T13:17:47+00:00

## Health v2 (maintenance only)
Score: 87/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 98, release rhythm 66, longevity 100
- inputs: {"age_days": 3561, "days_push": 15, "days_rel": 17, "gap_med": 313.0, "n_releases_24m": 3}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 4579, forks 557 (observed 2026-08-28T04:08:54.489518+00:00)

## What it is
smoltcp is a standalone, event-driven TCP/IP stack written in Rust, designed for bare-metal and real-time systems without heap allocation. It supports Ethernet, IP, IEEE 802.15.4, and 6LoWPAN with TCP, UDP, ICMP, and DHCP protocols.

## Use cases
- add TCP/IP networking to an embedded microcontroller project
- implement a no_std network stack for bare-metal Rust firmware
- run TCP and UDP sockets on a device without an operating system
- use 6LoWPAN and IEEE 802.15.4 networking in IoT devices
- build a userspace TCP/IP stack for testing or simulation
- serve network protocols on real-time systems without heap allocation

## When to choose
- you need a TCP/IP stack in a no_std or heapless embedded environment
- you are writing Rust firmware for microcontrollers that requires networking
- you want a simple, robust, event-driven network stack you can audit and control
- you need IPv4/IPv6, TCP, UDP, or 6LoWPAN support without an OS

## When to avoid
- you need a fully featured, production-grade stack with all RFC features like IPv4 options or 802.1Q
- you are building a general-purpose desktop or server application where the OS network stack suffices
- you need maximum throughput beyond ~Gbps loopback performance
- you prefer a C-based stack like lwIP for non-Rust projects

## Facets
- artifact type: library
- maturity: active
- function: networking, http-server
- domain: embedded-systems, networking
- platform: rust, embedded, cross-platform
- tags: tcp-ip-stack, no-std, bare-metal, embedded-networking, ipv6, 6lowpan

## Member repositories
- smoltcp-rs/smoltcp (main) score 87

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:08:54.489518+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T18:19:54.733882+00:00, confidence not recorded.
  - readme: https://github.com/smoltcp-rs/smoltcp (fetched 2026-08-28T04:08:54.489518+00:00, sha 76fdebc0baab)
  - registry_crates: https://crates.io/api/v1/crates/smoltcp (fetched 2026-08-29T09:05:11.032721+00:00, sha 6b820c7191b7)
- Data as of 2026-08-30T08:39:29.467469+00:00.
