Easy-to-manage touch screens
Free, open-source touch screens. Guided USB setup, a drag-and-drop editor and local control. Made for Home Assistant.
Astrophotography planner by DarkSkyscapes
Translation pending
LifestyleGitHub @evzipmarketingOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
Repository information has not been collected yet.
No updates detected yet. GitHub releases will appear here.
Astro Photography Planning Assistant
Translation pending
Loading the full README.
Read the full README ↗Astrophotography planner by DarkSkyscapes. Pick a site and a night, see which catalogue objects are actually up, check cloud cover, and preview how the target sits on the sensor of the rig you are using.
Phase 1 is a web app. Later phases add accounts, a private Panchang engine, and a native client. The astronomy and gear maths already live in a framework-free package so that work does not have to start over.
Asia/Kolkata). Presets cover a few other Indian cities, or you can type coordinates and an IANA timezone.M 42, NGC 224, LDN 1) or common name.localStorage.apps/web Next.js App Router UI
packages/core Astronomy, optics, catalogue search, weather parsing, Panchang interface
packages/data Catalogue JSON, seed gear, site presets
supabase Phase 2 notes only
apps/mobile is reserved for phase 4 (Expo). It is not in the tree yet. @dss/core and @dss/data have no DOM dependency, so a React Native app can import them directly.
pnpm install
pnpm dev # http://localhost:3000
pnpm test
pnpm typecheck
pnpm lint
pnpm build
Node 20 or newer. The repo pins pnpm through the packageManager field.
The framing request goes to apps/web/app/api/sky. That route calls CDS hips2fits for CDS/P/DSS2/color (TAN, ICRS, rotation 0, so north is up and east is left). If hips2fits does not answer, the same field is assembled from public JPEG tiles of that HiPS (MAST, IPAC, then ESA). Colour JPEG tiles deeper than order 7 are clipped, so the fallback stays at order 7 and small fields look softer than a hips2fits cutout. The caption under the frame says which path was used.
Sub length is the time for sky noise to reach about five times the camera’s nominal read noise. The electron rate uses a magnitude-0 photon zero point, the filter’s equivalent width, aperture, pixel scale, and a Bortle surface brightness. Total hours start from a per-filter baseline at Bortle 4 and f/5, then scale with sky flux and focal ratio squared. It is a planning guess, not a per-object signal-to-noise model.
Sampling compares arcseconds per pixel with an assumed seeing that only tracks Bortle class (about 1.5″ in class 1 to about 3.5″ in class 9). Bortle is sky brightness, not a seeing measurement.
The catalogue is two JSON files so the app can paint from the core list and load the rest in the background. core.json is the objects an imager usually searches first (Messier, Caldwell, named nebulae and clusters, Sharpless, Barnard, Lynds bright, van den Bergh, Abell planetaries, Arp, RCW, Cederblad, the Herschel 400, and the brighter NGC/IC). extended.json is the remaining NGC/IC, Lynds dark nebulae, Abell galaxy clusters, and UGC galaxies that pass the cut. Both are static imports behind separate package entry points (@dss/data/catalogue and @dss/data/catalogue-extended), so a future Expo app can load them the same way.
Objects that share a designation are one record. M42 carries NGC 1976, LBN 974, Sh2-281, and Ced 55d. Search matches any alias or common name. The shortlist filters by object type, catalogue, faintest magnitude, and minimum size; with the filters left empty it still prefers named and bright targets that actually clear 20°.
This is the beginning of the README. Read the rest at the original. Read the full README ↗