Skip to main content

AstroLab: A Space-themed study CLI tool using real NASA data and Google Gemini AI.

Project description

AstroLab 🚀

NASA API Powered

Pivot for the Hack Club Sidequest Challenger. An astronomy/physics study tool that utilizes real NASA data (APOD endpoint) to generate interactive quizzes and flashcards using Google Gemini AI. The perfect tool for studying "between lectures"!

Features

  • astrolab apod: Shows the "Astronomy Picture of the Day" with a detailed explanation.
  • astrolab quiz: Generates an interactive 5-question quiz based on the daily APOD using AI. Includes a Deep Dive mode to learn from your mistakes!
  • astrolab flashcard "<topic>": Creates a thematic flashcard based on space data and automatically saves it to your personal deck.
  • astrolab review: [NOVO] Starts a review session with all the flashcards you have generated and saved.
  • astrolab stats: Displays your study progress history with stylized bar charts in the terminal! Track your performance and accuracy across sessions.

💡 Quick Start (For Reviewers)

AstroLab is now published on PyPI for a frictionless testing experience!

  1. Install the package globally via pip:
pip install astrolab-cli
  1. [OPTIONAL] To use the fully dynamic AI generation, configure your credentials by creating a .env file in your working directory:
NASA_API_KEY=your_key_here
GEMINI_API_KEY=your_key_here

Note: If you don't configure an .env, the system will use a DEMO_KEY for NASA and safely fallback to our Smart Demo Mode for Gemini, pulling rich pre-generated responses from an internal cache.

  1. Explore space with our beautiful interactive menu by running:
astrolab

Architecture and Tech Stack

  • NASA APOD API: Provides the foundational space data.
  • Google Gemini API: Generates and evaluates questions based on space context and creates Deep Dives.
  • Python / Rich: CLI interface with beautiful visual components.
  • Storage: Study history and Flashcard Deck persisted locally via JSON in data/.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

astrolab_cli-1.0.0.tar.gz (14.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

astrolab_cli-1.0.0-py3-none-any.whl (15.0 kB view details)

Uploaded Python 3

File details

Details for the file astrolab_cli-1.0.0.tar.gz.

File metadata

  • Download URL: astrolab_cli-1.0.0.tar.gz
  • Upload date:
  • Size: 14.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for astrolab_cli-1.0.0.tar.gz
Algorithm Hash digest
SHA256 a34ea583b1717b3d31047fa01ab4f95a4eb08697fff319d6714631f039e2df4d
MD5 e9540130f0f9e5ff88ec062d63b4329d
BLAKE2b-256 ec2206809ceef33c6e30aa9b38ae126fc8f8b901665b932b3f6e090b476f886b

See more details on using hashes here.

Provenance

The following attestation bundles were made for astrolab_cli-1.0.0.tar.gz:

Publisher: ci.yml on EngThi/AstroLab

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file astrolab_cli-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: astrolab_cli-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 15.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for astrolab_cli-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 794743d3bead3cfa34ceed7c9679c0c35e7522d4961325a41dcb2734cc16f346
MD5 a3493a91c61b7214caffc2305da38482
BLAKE2b-256 f03b560b6c3edf7aeb34ae33d7e1c115e6ab21a9a6d520562d071d8f3fee02d4

See more details on using hashes here.

Provenance

The following attestation bundles were made for astrolab_cli-1.0.0-py3-none-any.whl:

Publisher: ci.yml on EngThi/AstroLab

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page