Skip to main content

A Flask-based astrophotography web application

Project description

๐ŸŒŒ AstroSpace

AstroSpace is a web application designed to host, organize, and showcase your astrophotography collection. ๐Ÿ”ญ Sort celestial objects in timeline views, automatic annotation for your images (via Plate Solving), compare the size of your DSO with moon scale, explore the objects inside your DSO with Plotly graphs and much more! โœจ

Perfect for amateur astronomers, astrophotographers, and stargazers who want to organize their night sky adventures and create their own personal space for Astro Stuff! ๐ŸŒŸ

check out my Instance at:

www.astro.space-js.de

๐Ÿš€ Key Features

  • ๐Ÿ” Secure User Authentication โ€“ Protected access with customizable user limits
  • ๐ŸŽจ Modern Tailwind CSS Interface โ€“ Sleek, responsive design that looks professional
  • ๐ŸŒ™ Dark & Light Mode Support โ€“ Perfect for both day and night viewing sessions
  • ๐Ÿ—‚๏ธ Dynamic Content Management โ€“ Seamlessly handle static and dynamic astrophotography content
  • ๐Ÿงฉ Modular Architecture โ€“ Clean, maintainable structure with reusable utilities and templates
  • ๐Ÿณ Docker Ready โ€“ Containerized deployment for hassle-free setup
  • โœ๏ธ Post Creation & Editing โ€“ Document your observations and share your astrophotography journey
  • ๐Ÿ“Š PHD2 Log Integration โ€“ Upload and analyze your autoguiding logs for better tracking performance
  • ๐Ÿ” Plate Solving โ€“ Automatically identify celestial objects and coordinates in your images
  • ๐Ÿ“ฑ Responsive Design โ€“ Access your collection from any device
  • ๐ŸŒ• Moon Scale for DSO Frames โ€“ Visualize the scale of deep sky objects in comparison to the Moon
  • ๐Ÿ—บ๏ธ Equatorial Grid Overlay โ€“ Overlay celestial coordinate grids for precise orientation
  • ๐Ÿ”— Shareable Links with Tabular Acquisition Details โ€“ Easily share your captures along with structured metadata
  • ๐Ÿ“ˆ Explore DSO Contents with Plotly Graphs โ€“ Interactively visualize SIMBAD and VizieR catalog queries

๐Ÿ“ธ Screenshots

๐Ÿ–ผ๏ธ Image Gallery with Detailed Information Tabs

Organize your astrophotography with rich metadata and detailed viewing options:

image image

๐Ÿ“Š PHD2 Log Analysis

Upload and analyze your autoguiding performance:

image

๐Ÿ” User Authentication System

Secure login with configurable user limits (set MAX_USERS environment variable):

User Login Interface

โœ๏ธ Content Creation

Create and share your astrophotography posts:

Post Creation Interface


๐Ÿ“Œ Upcoming Features

  • ๐Ÿ› ๏ธ Equipment Inventory System - Track your telescopes, cameras, filters, and accessories
  • ๐Ÿ“ Advanced Blogging Platform - Enhanced tools for documenting observations and techniques
  • โ˜€๏ธ Solar Photography Support - Extended functionality for solar observation and imaging
  • ๐ŸŒ Weather Integration - Connect with weather APIs for observing conditions
  • ๐Ÿ“ˆ Advanced Analytics - Detailed statistics about your imaging sessions and equipment performance

๐Ÿ› ๏ธ Getting Started

๐Ÿ”ง Prerequisites

Before you begin, ensure you have the following installed on your system:

  • ๐Ÿ Python 3.10+ - The core runtime environment
  • ๐Ÿ“ฆ pip - Python package installer
  • ๐Ÿ—„๏ธ PostgreSQL - Database server (or another SQL-compatible database)
  • ๐Ÿณ Docker - (Optional) For containerized deployment
  • ๐ŸŒ Astrometry.net Account - For plate-solving functionality

๐Ÿงช Local Development Setup

Follow these steps to get AstroSpace running on your local machine:

# ๐Ÿ“ฅ Clone the repository
git clone https://github.com/sharon92/AstroSpace.git
cd AstroSpace

# ๐Ÿ”ง Set up a Python virtual environment
python -m venv venv
source venv/bin/activate      # On Windows: venv\Scripts\activate

# ๐Ÿ“ฆ Install required dependencies
pip install -r requirements.txt

# โš™๏ธ Create configuration file
# Create a file at: instance/config.py
# Add the following configuration variables:

๐Ÿ“ Configuration Template

Create instance/config.py with the following settings:

# ๐Ÿ” Security Configuration
SECRET_KEY = 'your-super-secret-key-here'  # โš ๏ธ Change this in production!

# ๐Ÿ—„๏ธ Database Configuration
DB_NAME = 'astrospace_db'
DB_USER = 'your_username'
DB_PASSWORD = 'your_secure_password'
DB_HOST = 'localhost'  # Or your database hostname
DB_PORT = 5432

# ๐ŸŒŸ Astrometry.net API Configuration
# Go to https://nova.astrometry.net and sign in to get your API key
ASTROMETRY_API_KEY = "your_astrometry_api_key_here"

# ๐Ÿ‘ฅ User Management
MAX_USERS = 5  # Set maximum number of registered users

# ๐Ÿท๏ธ Site Branding
TITLE = "My AstroSpace Observatory"  # Customize your site name
# ๐Ÿš€ Launch the application
flask --app AstroSpace run

Your AstroSpace instance will be available at http://localhost:5000 ๐ŸŒ

Docker Container

docker pull sharonshaji92/astrospace:latest
docker run \
  -d \
  --name='Your_Container_Name' \
  -e 'SECRET_KEY'='your_super_secret_key' \
  -e 'DB_NAME'='astrodb' \
  -e 'DB_USER'='test' \
  -e 'DB_PASSWORD'='123123' \
  -e 'DB_PORT'='8080' \
  -e 'TITLE'='Your_Website_Name' \
  -e 'MAX_USERS'='1' \
  -e 'ASTROMETRY_API_KEY'='your_astrometry_key' \
  -e 'DB_HOST'='0.0.0.0' \
  -p '9000:9000/tcp' \
  sharonshaji92/astrospace:latest

๐Ÿค Contributing

We welcome contributions from the astrophotography community! ๐ŸŒŸ

Ways to Contribute:

  • ๐Ÿ› Bug Reports - Found an issue? Let us know!
  • ๐Ÿ’ก Feature Requests - Have ideas for new functionality?
  • ๐Ÿ”ง Code Contributions - Submit pull requests with improvements
  • ๐Ÿ“š Documentation - Help improve our guides and documentation
  • ๐Ÿงช Testing - Help test new features and report feedback

Feel free to:

  • ๐Ÿ“ Open an issue for bugs or feature requests
  • ๐Ÿ”€ Submit a pull request with your improvements
  • ๐Ÿ’ฌ Join discussions about the project's future

๐Ÿ“ License

This project is licensed under the GNU GPL-3.0 License ๐Ÿ“„

This means you're free to use, modify, and distribute AstroSpace, but any modifications must also be open source under the same license. Perfect for keeping the astrophotography community's tools open and accessible! ๐ŸŒ


๐Ÿ“ฌ Get in Touch

Have questions, suggestions, or just want to share your amazing astrophotography results? Reach out!


Made with โค๏ธ for the astrophotography community ๐ŸŒŒ

Clear skies and happy imaging! โœจ๐Ÿ”ญ

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

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

astrospace-1.0.1-py3-none-any.whl (13.8 MB view details)

Uploaded Python 3

File details

Details for the file astrospace-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: astrospace-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 13.8 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.28.1

File hashes

Hashes for astrospace-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f2ae8544ce5d638773031b82415f2bd5cd1664fd270edc0e1554849b90e208e9
MD5 5b41ed061dc93d4a1b9d7fc3e01bfaf5
BLAKE2b-256 074d29af6d531111d5e95f41f94be4faac4e5d55f72c81f7f9450c3a4d897e11

See more details on using hashes here.

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