Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Catalogues are scene features; their analysis is an app (dark matter, large-scale structure, globular orbits)

Open
#233 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
15/100
Issue type
Documentation
Clarity
Mostly clear
Activity status
Active
Tech stack
javascript

Research direction

Start with DESIGN.md (the widgets drawer and dock section), design/URLs.md (the "Apps Token" section) and ROADMAP.md, then read js/scene/Colonization.md as the reference app. Done when the catalogue-versus-app rule is written into those three files and a dark-matter app exists, built on the rotation curves from PR #223 and the mass model from #106. The app part is substantial design work, so a newcomer should start with the documentation.

Written by the indexing model from the issue text.

Description

enhancement track:ux

A cross-track decision, raised by the maintainer while reviewing PR #223 (SPARC galaxies): how deep catalogues and their analysis are presented, so controls and permalinks stay organised as the deep-sky catalogues grow (#117).

The rule

  • Seeing a catalogue is a plain scene feature. Points, labels and search for galaxies, globulars and deep-sky objects are on as simply as possible:
    • a key, as Celestia has (e for galaxy labels, E for globular labels);
    • a Settings checkbox;
    • an s= setting letter in the link.
  • Analysing a catalogue is an app in the widgets drawer, as the Human Expansion app is (js/scene/Colonization.md; DESIGN.md, widgets drawer and dock). An app:
    • may change the main scene and UI (add layers, swap a model, show plots);
    • has its own controls for those changes in its panel;
    • keeps its state in apps.<id>: tokens (design/URLs.md, "Apps Token"), never in new view params or s= letters;
    • removes everything it added in its stop, so the scene goes back to plain.

Candidates

  • Galaxy dynamics / dark matter (#106, with SPARC's rotation curves from #221/PR #223):

    • the dark-matter halo on or off for the Milky Way and for each SPARC galaxy;
    • the observed curve against the baryonic one;
    • the radial acceleration relation.

    PR #223 put a rotation-curve plot in the info panel; under this rule it moves into this app, and the info panel keeps only the catalogue's values.

  • Large-scale structure (the LSS issue, linked below): the observed web, the reconstructed volume, flows, and real or simulated.

  • Globular orbits (#228, with Baumgardt's Gaia velocities): orbits in the Milky Way's potential.

  • Human expansion (existing): already an app; the reference implementation.

What to write down

  • A section in DESIGN.md (widgets drawer and dock): the rule above, and what an app may and may not change.
  • A line in design/URLs.md: catalogue visibility is an s= letter, analysis state is apps.<id>:.
  • A "Decisions that apply across tracks" entry in ROADMAP.md.

Done when

  • The rule is documented in DESIGN.md, design/URLs.md and ROADMAP.md.
  • The dark-matter app exists as the first analysis app, built on #223's rotation curves and #106's mass model.

Related: SPARC galaxies #221 / PR #223; globulars #228 (Harris, plus Baumgardt); deep-sky objects from OpenNGC #229; nearby galaxies #230; S4G and ATLAS3D #231; large-scale structure #232; catalogues as scene features, analysis as apps #233; galactic dynamics #106; the Milky Way #116.


Generated by Claude Code

Dominant language
JavaScript
Stars
55
Forks
4
Avg merge
10h 12m
Merged PRs (30d)
134

Getting set up

This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from celestiary/web

All issues in celestiary/web

Similar issues

More JavaScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.