stardance has been extended another month! the new deadline is october 31 :)

You are browsing as a guest. Sign up (or log in) to start making projects!

spacecrew

  • 27 Devlogs
  • 227 Total hours

Check who is in space right now!

Ship #1 Pending review

spacecrew - mission control for your terminal

  • What I made: I got tired of opening five browser tabs to follow space, so I built one command that brings them all together. spacecrew tells you who’s in orbit this second, tells you when the ISS is about to cross your sky, counts down the next liftoff with a rocket photo beside it, displays NASA’s Picture of the Day in terminal characters, and tracks solar activity with a verdict on whether you’ll see auroras tonight.

  • What was challenging: At one point, every satellite prediction was perfectly calculated, but for the mirror image of Earth. A single flipped sign in the orbital math put passes on the wrong side of the planet, and nothing looked obviously broken until I cross-checked each pass against an independent physics library, minute by minute, until reality matched. The other fight was time itself: switching an app built around UTC to local time without breaking a single countdown.

  • What I’m proud of: The app now distrusts the internet by default. Dead APIs, rate limits, airplane mode: it keeps working from cached data and built-in satellite TLEs whenever possible. It also includes real orbital calculations, satellite tracking, radio frequencies, and a full interactive terminal interface, all installable with a single command.

  • Features: People in Space, NASA APOD, Launches, ISS Tracking, Space Weather, Satellite Passes, Themes, Dashboard

  • The GitHub README includes a detailed breakdown of the features, modes, configuration options, and command-line flags, along with screenshots and examples.

  • Try it yourself:
    Install with either command:
    pipx install spacecrew or pip install spacecrew

  • 27 devlogs
  • 227h
Try project → See source code →
Open comments for this post

33m 5s logged

spacecrew - quick terminal tour

Quick tour of spacecrew in action: interactive menu, people in space, live ISS position, Tonight’s Best satellite passes, a launch countdown with the rocket photo view and more. Video is now available on the GitHub project page.

0
0
32
Open comments for this post

2h 10m logged

v1.2.18 and v1.2.19 - Documentation and run fixes

  1. **Tzdata dependency ** - added the Windows-only tzdata dependency so timezones resolve correctly instead of falling back to UTC
  2. Dashboard navigation - fixed Enter-to-exit on Windows using msvcrt, while keeping existing POSIX behavior unchanged
  3. Module execution - python -m spacecrew now works via the new __main__.py
  4. Version detection - falls back to pyproject.toml in development checkouts to avoid reporting stale versions
  5. Docs - completely rewrote the README with feature sections and screenshots

Published - v1.2.19 is now available on GitHub and PyPI

0
0
17
Open comments for this post

10h 6m 11s logged

v1.2.17 - Timezones, rocket photos, and satellite pass fixes

  1. Local timezones - added --timezone flag, saved timezone settings, and automatic detection. Times display locally (e.g. 20:00 CEST), with UTC in parentheses in detail views
  2. UTC consistency - countdowns and --json output remain in UTC
  3. Rocket photos - press p in launch details to view a large, high-resolution rocket photo with minimal accompanying info
  4. Satellite pass accuracy - fixed a rotation sign error that caused incorrect predictions, verified against an independent reference to within ±1 minute
  5. Low-elevation passes - fixed filtering that silently dropped visible passes
  6. Settings persistence - fixed settings that sometimes failed to save
  7. Clean JSON output - status banners no longer pollute --json output

Published - v1.2.17 is now available on GitHub and PyPI

0
0
33
Open comments for this post

10h 12m logged

v1.2.16 - Fixes and configuration improvements

  1. Cache control - fixed --no-cache, which was parsed but previously ignored
  2. Custom configuration - added --config DIR, SPACE_CREW_CONFIG_DIR, and XDG_CONFIG_HOME support for isolated configs
  3. NASA API errors - added clearer DEMO_KEY rate-limit hints with an API link, plus 5xx and offline guidance in the APOD view
  4. SatNOGS cache - fixed cache typing to support both dictionaries and lists
  5. Offline weather - fixed offline responses to return the complete expected data structure
  6. Code cleanup - removed a duplicate docstring
  7. Documentation - updated the man page to v1.2.16 and synced README examples for --json and --config

Published - v1.2.16 is now available on GitHub and PyPI

0
0
28
Open comments for this post

8h 2m 20s logged

v1.2.15 - Scriptability, radio, and aurora

  1. JSON output - added --json support for passes, people, and launches, with machine-readable data for scripts, jq, cron jobs, and home automation
  2. Pass data - JSON includes satellite name, group, start/end times, max elevation, duration, magnitude, quality, cloud cover, moon phase, and visibility
  3. Downlink frequencies - new FREQUENCIES panel with SatNOGS transmitter data, including frequency, mode, uplink, baud rate, and description
  4. Offline frequency cache - transmitter data cached for 90 days and available offline
  5. Aurora forecast - dashboard and space weather view now show whether aurora is Overhead possible, Low on horizon possible, or Unlikely based on Kp and your location
  6. Reliable satellite data - 396-satellite offline TLE fallback across all 13 groups, with stale-cache failover when Celestrak is unavailable
  7. Faster fetching - shorter timeouts and improved data loading

Published - v1.2.15 is now available on GitHub and PyPI

0
0
8
Open comments for this post

10h 23m 23s logged

v1.2.14 - Live dashboard, countdowns, satellite info, and fetch improvements

  1. Live dashboard - updates every second, with background data refreshes every 60 seconds and Enter-only exit
  2. Countdowns everywhere - shows time until passes, red NOW for active passes, and dim ENDED for finished passes
  3. Pass filtering - ended passes are filtered out so lists start with the next upcoming pass
  4. Satellite info panel - displays NORAD ID, launch date, operator, country, and status from cached SatNOGS data
  5. Reliable data fetching - fast failover to stale cache and 396-satellite built-in fallback
  6. Parallel fetching - satellite groups load in parallel for better performance
  7. Cache protection - empty results never overwrite valid cached data
  8. Dashboard accuracy - Tiangong no longer displays ISS data

Published - v1.2.14 is now available on GitHub and PyPI

0
0
43
Open comments for this post

9h 47m 58s logged

v1.2.13 - Satellite data, dashboard, performance and documentation

  1. Offline satellite data - 396 real satellites across all 13 groups
  2. Satellite groups - fixed dead GROUP=other and empty iridium groups
  3. Dashboard fixes - q quits, Tiangong displays correct data, and unused imports removed
  4. Lazy-loaded images - Pillow and chafa no longer required at startup, with a new --no-image flag
  5. Performance improvements - optimized observer calculations and parallel group fetching
  6. Cache fixes - empty results no longer overwrite cached satellite data
  7. Documentation - updated README with all modes, configuration, and flags
  8. Man page - fixed documentation and removed duplicate man directory

Published - v1.2.13 is now available on GitHub and PyPI

0
0
23
Open comments for this post

11h 41m 40s logged

v1.2.12 - Bug fixes and packaging improvements

  1. Core stability - fixed argument parsing and replaced recursive refresh loops with proper loops
  2. Astronaut view - fixed crashes when photos are missing
  3. Moon phases - all 8 phases now work correctly, with proper UTC timestamps
  4. Satellite passes - fixed filter persistence, empty lists, group tags, and missing URLs
  5. ISS tracking - improved retries, offline handling, and location accuracy
  6. Dashboard - fixed storm level detection, now shows actual conditions
  7. Cache and display - improved corrupted cache handling and screen clearing
  8. APOD and space weather - fixed API key handling, date requests, and image loading with fallbacks
  9. Packaging - wheel now includes the man page and fallback TLE data

Published - v1.2.12 is now available on GitHub and PyPI

0
0
24
Open comments for this post

10h 24m logged

v1.2.10, v1.2.11 - Satellite tracker improvements

  1. Fallback TLE data - 24 satellites across 6 groups, available when network sources fail
  2. Detail view fixes
  3. Full-width panels - expanded panels for improved layout
  4. Faster TLE fetching

Published - v1.2.11 is now available on GitHub and PyPI

0
0
10
Open comments for this post

9h 48m 12s logged

v1.2.9 - Satellite detail view & themes

  1. Satellite detail redesign - new panel and table layout matching the launches and people views
  2. Header panel - satellite name, group badge, and FAV indicator
  3. Next Pass panel - highlighted summary with time, elevation, direction, duration, magnitude, quality, cloud cover, and moon phase
  4. Full passes table - date, time, max elevation, direction, duration, magnitude, quality, cloud cover, moon phase, and visibility
  5. Visibility indicators - green rows for visible passes and dimmed rows for non-visible passes
  6. Refined styling - subtle borders and softer colors for a cleaner look
  7. 10 themes - added Dracula

Published - v1.2.9 is now available on GitHub and PyPI

0
0
14
Open comments for this post

6h 34m logged

v1.2.8 - Satellite Passes visual improvements

  1. Panel-based layout - each satellite now has a bordered card with its number, name, group badge, and [FAV] indicator
  2. Multiple passes - up to 3 passes per satellite, configurable
  3. Quality-tier borders - Best, Good, OK, and Dim tiers with matching colors
  4. Clean pass data - time, elevation, compass direction, duration, magnitude, and quality score
  5. Visibility details - cloud cover, moon phase, and VISIBLE status shown for each pass
  6. Satellite groups - fixed categorization: ISS & Stations, Starlink, Navigation, Science & Weather, Other
  7. Favorites integration - [FAV] badge, favorites-only mode with 5, and F to toggle favorites
  8. Detail view navigation - Enter returns to the previous list instead of the main menu

Published - v1.2.8 is now available on GitHub and PyPI

0
0
28
Open comments for this post

9h 46m logged

v1.2.6 - Satellite groups, navigation & visual improvements

  1. Satellite groups - proper categorization: ISS & Stations, Starlink, Navigation, Science & Weather, Other
  2. Detail view navigation - Enter now returns to the previous list instead of the main menu
  3. Cloud cover - displayed as ☁︎ XX%
  4. Azimuth - compass direction added, e.g. 45°NE → 135°SE
  5. Moon phase - displayed as Moon XX%
  6. Code cleanup

Published - v1.2.5 is now available on GitHub and PyPI

0
0
24
Open comments for this post

10h 32m logged

v1.2.6 - Favorites satellites

  1. Favorites - add or remove satellites from the detail view with F
  2. Favorites mode - press 5 in the satellite passes menu to show only favorited satellites
  3. Favorites badge - ★ FAV badge shown in satellite detail view
  4. Persistent favorites - saved in ~/.config/spacecrew/config.toml

Published - v1.2.5 is now available on GitHub and PyPI

0
0
3
Open comments for this post

9h 54m logged

v1.2.5 - Satellite tracker fixes & polish

  1. Tonight’s Best fixed - no longer loads 10k+ Starlink satellites, only ISS + Stations
  2. Tiered quality system - Best (mag < 2, el > 45°, dur > 5 min), Good (mag < 4, el > 25°), OK (mag < 5.5, el > 15°)
  3. Filter menu - fixed duplicate code
  4. Calculating passes… - removed duplicate message
  5. Man page - added man spacecrew
  6. Shell completions - added bash, zsh, and fish support via spacecrew --generate-completion
  7. GitHub Release - added automatic release creation on tag push

Published - v1.2.5 is now available on GitHub and PyPI

0
0
10
Open comments for this post

5h 56m logged

v1.2.3 - Pass Predictor fixes and UX improvements

  1. Tonight’s Best no longer loads 10k+ Starlink satellites
  2. Tiered quality system - Best, Good, OK instead of one strict filter
  3. Filter menu duplicate code fixed
  4. Calculating passes… duplicate message removed
  5. Night filtering fixed with sun_el_max

v1.2.3 on GitHub and PyPI.

0
0
17
Open comments for this post

10h 0m logged

v1.2.3 - Satellite tracker redesign

  1. Pass Predictor redesign - Tonight’s Best, All Passes, Specific Satellite
  2. Cloud cover from Open-Meteo, cached for 1 hour
  3. Moon phase via local Meeus algorithm, fully offline
  4. Night pass info - cloud cover and moon phase when relevant
  5. Satellite groups reorganized for easier browsing
  6. Direct satellite search across all groups
  7. Type badges added to satellite details
  8. Simplified controls - Enter = back everywhere
0
0
22
Open comments for this post

9h 21m 37s logged

v1.2.3 - Cloud cover and moon phase now appear alongside every predicted pass in the satellite tracker.

  1. Cloud cover - Real-time data from Open-Meteo. Shows percentage at exact pass time and location. Cached 1 hour.

  2. Moon phase - Local Meeus algorithm, zero API calls. Only shown for night passes (sun elevation < -6°). Displays phase name + illumination: MOON FIRST QUARTER 44%.

v1.2.3 on GitHub and PyPI.

0
0
17
Open comments for this post

10h 30m logged

spacecrew v1.2.1

  1. Dashboard mode (option 8) - 2-column btop-like grid: ISS/Tiangong/Passes left, Weather/People/Launches/APOD right; renders via Rich Layout grid

  2. 9 themes: default, Catppuccin Mocha/Latte, Tokyo Night, Gruvbox, Nord, Everforest, Rose Pine, Kanagawa - semantic styles, zero hardcoded colors, persist in config.toml

v1.2.1 on GitHub and PyPI

0
0
37
Open comments for this post

10h 29m 14s logged

v1.1.18 - Themes, progress bars, consistent Enter=back

  1. 5 themes: default, dark, solarized, dracula, monokai
  2. Progress bars: spinner for single fetch, count bar for multi-group TLE
  3. Enter = back everywhere for consistent navigation
  4. Replaced hardcoded colors with semantic theme styles
  5. Theme selection persists in config.toml

v1.1.18 on GitHub and PyPI.

0
0
10
Open comments for this post

10h 33m 3s logged

v1.1.16-17 - Pass quality scores and real magnitudes:

  1. Quality (0-100) - elevation, duration, darkness, magnitude, rarity combined

  2. Real mags - per-type standards (ISS -1.3, Starlink 5.5, GPS 4.0) with range + phase correction

  3. Phase angle math - proper Sun-sat-observer geometry for realistic brightness

  4. UI shows both - mag -2.6 Q80 on every pass in list and detail views

  5. All groups covered - stations, Starlink, military, NOAA, GOES, GPS, Galileo, BeiDou, Iridium

  6. Offline–irst - cached TLE, zero network needed

The predictor now tells you which passes are worth waking up for. v1.1.17 on GitHub and PyPI.

0
0
41
Open comments for this post

8h 2m 31s logged

spacecrew v1.1.15 - Satellite Pass Predictor update.

Fixed TLE cache: each group (stations, starlink, military, gps, weather, science, amateur, radar, cubesat, geo, iridium).

Menu:

  1. full menu (all/tonight/stations/starlink quick/days config),
  2. tonight’s best (quick 24h),
  3. specific satellite picker with group selector, search, pagination, 7-day detail,
  4. change location,
  5. back.

11 groups, 11,500+ satellites. Works offline (cached TLEs, 1-day TTL).

v1.1.15 on GitHub and PyPI.

0
0
21
Open comments for this post

11h 6m 20s logged

spacecrew v1.1.14 - Satellite Pass Predictor.
Menu option 6 / spacecrew –mode passes.

Celestrak TLE data + local sgp4 propagation, no API keys, no rate limits, works offline after first run. Tracks ISS, Starlink trains, and many more satellites. Calculates visible passes for the next three days: elevation >10°, sky dark, satellite sunlit.

Shows start time, max elevation, duration, direction, visibility flag. Location saved to config, prompted once.

Example: ISS 05:53 UTC max 53° 6min west→east ✓, Starlink-1017 11:21 UTC max 80° 7min ✓.

v1.1.14 on GitHub and PyPI.

0
0
40
Open comments for this post

10h 19m 45s logged

Today I released spacecrew v1.1.10, v1.1.11, and v1.1.12.

v1.1.10 - Added –offline flag: runs entirely from local SQLite cache with zero network requests. Avoids rate limits, works without internet. All four modes work if previously cached. Banner shows “Offline mode: using cached data only”.

v1.1.11 - Launch countdown timer: live T- in launches list (cyan to yellow to red as launch nears, LAUNCHED for past). Space Weather dashboard (menu option 5, –mode weather): solar flares (X/M/C colored), CMEs with speed, Kp index with storm level (Quiet to G5), NOAA 3-day forecast highlights. All cached (1-day TTL), works offline.

v1.1.12 - Fixed few things.

Published to GitHub (tags v1.1.10, v1.1.11, v1.1.12) and PyPI via automated workflow.

0
0
18
Open comments for this post

5h 42m 46s logged

Today I released spacecrew v1.1.9.

The main addition is an ISS Tracker using wheretheiss.at (real-time TLE calculation) as primary source with open-notify.org fallback - shows latitude, longitude, altitude (~425 km), velocity (~27,500 km/h), visibility, and location name via reverse geocoding, plus a Google Maps link.

Core improvements: persistent SQLite cache with configurable TTL (30 days default) for all API responses, a config file at ~/.config/spacecrew/config.toml (NASA API key, cache TTL, theme, default mode), CLI arguments for direct mode access (–mode {people,apod,launches,iss}), –clear-cache, –no-cache, Windows-compatible screen clearing, and Python 3.10 support via conditional tomli dependency.

Published to GitHub (tag v1.1.9) and PyPI via the automated workflow.

0
0
10
Open comments for this post

10h 25m 44s logged

Today I worked on spacecrew and enhanced the project with major improvements.

I enhanced NASA’s Astronomy Picture of the Day (APOD) with date navigation (previous day), HD image opening in browser, and full metadata display. I also added a new Upcoming Launches feature using The Space Devs API, showing 15 upcoming launches from all agencies with a clean panel-based list view and detailed view including links to launch transmissions when available, mission patch, and info/Wikipedia links.

I restructured the CLI with a main menu for three modes (People in Space, APOD, Launches), added NASA_API_KEY environment variable support with DEMO_KEY fallback, and implemented in-memory session caching for both features. Published v1.1.8 to GitHub and PyPI.

0
0
30
Open comments for this post

4h 35m 16s logged

Today I worked on spacecrew and made several improvements to the project.

I added NASA’s Astronomy Picture of the Day (APOD), so users can now view the current astronomical picture directly from the CLI. I also tested the feature, updated the project documentation, and published the updated version to GitHub and PyPI.

I also worked on improving the overall project and making the CLI easier to use.

0
0
14
Open comments for this post

15m 22s logged

Im working on spacecrew, a linux command line tool for managing and organizing space-related information directly from the terminal. Im improving the CLI, adding features, fixing bugs, and making the project easier to use.

0
0
62

Delete project?

Are you sure you want to permanently delete this project? This action cannot be undone.

All devlogs, followers, and associated data will be removed.

Followers

Loading…