Everything from molecules to galaxies, plotted between the hard limits of physics.
Open-data log-log charts of real objects, set against the hard limits physics allows: the speed of light, the black hole bound, the quantum limit and material strength. The charts cover spin, speed, mass, density, pressure, temperature, energy, power, electric and magnetic fields, black holes, pulsars, materials, sound, life, buildings, AI models and more. Every value cites a primary source. Explore the interactive charts →
Shaded regions are forbidden: physics rules them out (faster than light, below one quantum, denser than a black hole, louder than a vacuum allows). Dotted and dashed lines are practical limits where a class of object fails, such as material strength, self-gravity or the speed of sound. Markers are real objects, each with a source: the bar spans the known range of its class, and a black cap marks that object's own maximum.
Size and motion
Energy and power
![]() How much energy can a kilogram hold? |
![]() How powerful can an engine be? |
Electricity, magnetism and light
![]() How much electric charge can an object carry? |
![]() How much voltage can a gap hold? |
![]() How strong can a magnetic field be? |
![]() How far can a radio signal reach? |
![]() How bright can a light be? |
Black holes and neutron stars
![]() How fast do black holes spin? |
![]() Pulsars and magnetars: how fast do they spin down? |
Matter and flow
![]() How tightly can matter hold together? |
![]() How strong can a material be? |
![]() How loud can a sound be? |
![]() How much can flow through a channel? |
![]() How much do gas and water weigh? |
Life
![]() How small and how big can living things be? |
![]() How long is a genome, and how many genes does it hold? |
![]() How fast can an infection spread? |
Built world
![]() How tall can a building be? |
![]() How heavy are the biggest structures? |
Artificial intelligence
![]() How big are neural networks? |
![]() How much compute trains a model? |
![]() How close are AI systems to the ceiling of their benchmarks? |
Minds and numbers
![]() Limits of the human mind |
![]() Limits of a researcher |
![]() How big do numbers get? |
Every figure is also available as a vector PDF in figures/.
site/ is a Vue 3 + Vite + TypeScript app that draws every chart with Observable Plot:
- Hover or tap any object for its value, notes and source.
- Toggle categories on and off.
- Read each chart's explainer.
- Download the data or the print figures.
- Switch the interface between English, Korean (한국어) and Urdu (اردو, right-to-left). Links can carry the language, e.g.
?lang=ko. Strings and translated chart titles live insite/src/i18n/messages.ts; chart content (axes, lines, objects, explainers) stays in English.
It reads only the JSON that make figures exports to site/public/, so the limit lines on the website are the same sampled formulas as in the PNGs. It works on phones down to 375 px.
make figures # Python: data -> figures + site/public/data
make site # npm ci + production build into site/dist
make dev # local dev serverGitHub Pages deploys it from .github/workflows/pages.yml on every push to main, after lint and tests pass, to https://quantumnovice.github.io/awesome-universal-limits/. One-time setup in a fork: Settings → Pages → Source: GitHub Actions. Hash routes are shareable (#/chart/spin), and site/public/404.html redirects path-style links such as /chart/spin to them.
uv sync
make figures # schemas, data/json, figures/, site data, docs/REFERENCES.md, this README's gallery
make test # limits vs hand-computed values, data validation, bounds, label overlaps
make sources # check every DOI against Crossref and every URL (needs network)Without make or uv, use python -m allowed_universe.build and python -m pytest with src/ on PYTHONPATH.
Add one row to the right CSV in data/ with a primary source in source_url and a short citation, then run make figures test. Use SI units, and give the class range (lowest to highest) rather than one cherry-picked value. See CONTRIBUTING.md.
- Datasets. 34 charts are drawn from 35 CSV files in
data/. Each is validated against a JSON Schema indata/schema/and exported todata/json/with column descriptions. - Sources. Every row has a
source_urlandcitation. Every limit line that uses a measured constant cites its source too. All of them are collected in docs/REFERENCES.md and docs/references.bib. Journal sources are DOIs, andmake sourcesconfirms each DOI resolves to the cited title. - Limit lines are computed, never hand-drawn. They come from pure functions in
src/allowed_universe/limits.pyusing CODATA 2022 constants fromscipy.constants. Each one is unit-tested against a hand-computed value. - Tests enforce the bounds. A test fails if any object crosses a hard bound on its chart.
See CITATION.cff. When you reuse a specific number, please also cite its primary source from docs/REFERENCES.md.

































