About
About SkyCruncher
An astrophotography processing pipeline that shows its work.
On this page: What it is · Why · How the site is organized · How claims are marked · Who · What isn't done yet · Credits and licenses · Contact
What SkyCruncher is
Every clear night, people point telescopes at the sky and collect frames (single exposures). Each frame measures thousands of stars at a moment nobody else observed, and almost all of that is thrown away to keep the picture.
I'm building SkyCruncher to keep both. The new pipeline is meant to read a frame, work out where the telescope was pointing, identify every star it can against public star catalogs, measure each one, and write the numbers down with a receipt beside them: a record of how each number was made. It does that for single frames in my test bench (prototyped), not yet in the app. The aim is that the picture still comes out at the end, with every correction applied to it one the measurement says is there (planned).
What has shipped so far: this site, Upload, Clean my files, the sky planner, the calibration guide, Engine (Alpha) (the old engine, in your browser) and the 1.3 old engine for Windows. The SkyCruncher app itself is in development; the app page says where it stands.
Why
Amateurs together hold more telescope hours than the professional sky surveys, and the surveys come back to any one patch of sky only so often, so variable stars and short-lived events can fall through the gaps between their visits. A light curve, a star's brightness plotted over time, built from many amateur rigs (a rig is one telescope and camera) could help fill those gaps, if the measurements are careful enough.
The bet, that light curves combined across amateur rigs are precise enough to be worth having, is not settled.
How this site is organized
- Learn: how starlight becomes a measurement, and short guides for Seestar owners.
- Results: living pages, such as the sky map, rebuilt as data comes in.
- Experiments: dated measurements, each with the data it used.
- Tools: plan a night, clean your files before you share them, and calibrate.
- Share data: send a night of subs (the individual exposures a telescope saves) as FITS files, the standard file format for astronomy images.
- About: this page, Privacy, the app and Docs.
A few words mean something specific here:
- Experiment
- one measurement page with the data it used, at one address for good. A rerun is a new version at the same address, and every earlier version stays there as it was published.
- Results
- a living page. Unlike an Experiment it changes as data comes in, and it says when it last did.
- Note
- a short explanation or step-by-step guide in Learn, kept current.
- Corpus snapshot
- a dated, frozen page summing up how the engine did across a fixed set of frames on that day. The July 2026 snapshot, the old engine's baseline, is the first.
How claims are marked
Science pages here mark each claim with how far it is proven. A thin colored line runs beside the passage, and the numbers in a marked sentence take the same color. When a passage mixes kinds, its line shows the least proven one. Hover a colored number to see its kind; screen readers hear the word after each claim. Stated passages carry no line.
- measured
- a number measured from frames in my catalog: my own, or frames the community shared
- tested
- checked by a test that runs and passes
- implemented
- built, and working in software that has shipped
- published
- a value from a published catalog or paper, not measured by me
- prototyped
- works in my test bench, not in the app yet
- planned
- not built yet
- illustrative
- made-up numbers that show the idea
- inferred
- my data fits it, but it isn't tested
- stated (no line)
- ZWO, a datasheet or another source says so; I haven't tested it
Each value is measured, labeled approximate, or absent; anything unmeasured says NOT MEASURED. Plain counts, such as how many targets or frames are in the catalog, carry an "as of" date instead of a marker. The frame receipt format uses Built, Designed and Concept; those match implemented, prototyped and planned here.
Who
SkyCruncher is built by Adam Hogan, one developer. AI coding assistants are used throughout, for the code and for drafting pages like this one, and their work is checked against real plate solves. Plate solving is working out exactly where in the sky a frame points by matching its stars to a catalog, so a wrong answer shows up as stars that don't land where the catalog says they are.
What isn't done yet
- The app hasn't shipped. It is in development, with no release date. The app page has what you can try today.
- The new pipeline hasn't made a stacked picture. It runs single frames end to end in my test bench (prototyped), but combining many subs into one deeper picture doesn't work yet.
- The cross-rig bet is unproven. I haven't yet shown that light curves combined across amateur rigs are precise enough to be worth having. That is the test the project is built around.
Credits and licenses
Data
- Star data: this work has made use of data from the European Space Agency (ESA) mission Gaia (cosmos.esa.int/gaia), processed by the Gaia Data Processing and Analysis Consortium (DPAC, cosmos.esa.int/web/gaia/dpac/consortium). Funding for the DPAC has been provided by national institutions, in particular the institutions participating in the Gaia Multilateral Agreement. The star data is Gaia DR3, with bright stars added from the Hipparcos and Tycho-2 catalogs.
- Community data: the Seestar Collective, for its M 31 and variable-star data; other shared frames come from community contributors.
- In Starlight, Measured: terrain from NASA's Shuttle Radar Topography Mission (SRTM), distributed by NASA and the U.S. Geological Survey; night lights from NASA Black Marble (Suomi NPP VIIRS), NASA Goddard Space Flight Center; galaxy references from the Siena Galaxy Atlas 2020 (Moustakas et al. 2023); galaxy profile fitting with GALFIT (Peng et al. 2002, AJ 124, 266; Peng et al. 2010, AJ 139, 2097).
Software and fonts on this site
Every library and font listed here is a copy served from skycruncher.io. A few requests do go to other sites: the Cloudflare visit counter on each page, the Cloudflare Turnstile bot check on Upload, and on the planner, "Send to Seestar" (ZWO's share service, only when you click it). The planner's shared sessions are built but switched off, so today it sends nothing to a sessions service (Privacy).
| What | Where | License |
|---|---|---|
| three.js r149, 3D graphics, in Learn | /learn/vendor/three/ |
MIT, notice in the file header |
| KaTeX 0.16.11, math typesetting, with its fonts (in Learn the full library; in the two calibration pages the stylesheet and fonts only) | /learn/vendor/katex/, /calibration/vendor/katex/, /learn/calibration/vendor/katex/ |
MIT (license text) |
| Tailwind CSS 3.4.19, styles for Starlight, Measured, in Learn | /learn/assets/tailwind.css |
MIT, notice in the file header |
| Font Awesome Free 6.5.1, icons, in Learn | /learn/vendor/fontawesome/ |
Icons CC BY 4.0, fonts SIL OFL 1.1, code MIT; notice in all.min.css (license terms) |
| QR Code generator library by Project Nayuki, 1.8.0, in the planner | /planner/vendor/qrcodegen/ |
MIT (LICENSE) |
| Camera raw decoder for the upload page, built on rawler 0.7.2 (which descends from rawloader, with parts from LibRaw and RawSpeed) | /upload/vendor/rawler/ |
LGPL-2.1 (LICENSE, NOTICE). Source offer being fixed: the NOTICE's source link points to a repository that isn't public yet. |
| Inter and JetBrains Mono, fonts | /assets/fonts/, /experiments/fonts/, and each Experiment's own fonts/ folder |
SIL OFL 1.1 (Inter, JetBrains Mono, Experiments' copy) |
Engine (Alpha)
Engine (Alpha) is the old engine's browser build, served from its own address. It ships the license texts the old engine carries: Apache License 2.0 (the old engine's own code), LGPL-2.1 (rawler, its camera raw decoder), CDDL-1.0 (LibRaw) and MPL-2.0 (a few parsing libraries), plus SIL OFL 1.1 beside its copies of Inter and JetBrains Mono. The old engine's full list of third-party components and their licenses is in its public repository: docs/LICENSING.md.
Licenses
- This site's code: Apache License 2.0. Its repository is private.
- The 1.3 old engine: open source under the Apache License 2.0: github.com/ahoganpurdue/skycruncher.io.
- Anything carrying Gaia values: Gaia's own terms, CC BY-NC 3.0 IGO.
- (planned) Public data bundles: measurements shared by contributors are planned to go out under CC BY 4.0, with anything carrying Gaia values kept apart under Gaia's terms. No bundle has been published yet.
Contact
Anything: hello@skycruncher.io. Uploads and deletions: data@skycruncher.io. What happens to your files: Privacy.