Skip to content

AstroSpace lets you host your Astrophotography collection. Sort similar objects in a timeline, plate solve images and more :)

License

Notifications You must be signed in to change notification settings

sharon92/AstroSpace

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

72 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🌌 AstroSpace

AstroSpace is a web application designed to host, organize, and showcase your astrophotography collection, its basically your personal Astrobin/Instagram. πŸ”­ 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:

πŸš€ 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. Plots a Hertzsprung Russel Diagram by default.
  • πŸ› οΈ Equipment Inventory System - Track your telescopes, cameras, filters, and accessories

πŸ“Έ Screenshots

πŸ–ΌοΈ Image Gallery with Detailed Information Tabs

Organize your astrophotography with rich metadata and detailed viewing options:

image

Details

image 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

  • πŸ“ 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

πŸ“ Configuration Template

Create 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

# πŸ‘₯ User Management
MAX_USERS = 5  # Set maximum number of registered users

# 🏷️ Site Branding
TITLE = "My AstroSpace Observatory"  # Customize your site name can be changed later in settings

# Upload Path - uploaded jpegs and phd logs will be saved here
UPLOAD_PATH = "absolute/path/to/uploads

πŸ§ͺ Local Setup

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

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

# πŸ“¦ Install astrospace package
pip install astrospace

set ASTROSPACE_SETTINGS=path/to/config.py
flask --app AstroSpace run

#follow the link in the console to access your website

πŸ§ͺ 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
# πŸš€ Launch the application
set ASTROSPACE_SETTINGS=path/to/config.py
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 'DB_HOST'='0.0.0.0' \
  -e 'UPLOAD_PATH' = '/uploads' \
  -p '9000:9000/tcp' \
  -v '/path/on/server/to/mount/to/the/app':'/uploads' \
  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! βœ¨πŸ”­

About

AstroSpace lets you host your Astrophotography collection. Sort similar objects in a timeline, plate solve images and more :)

Resources

License

Stars

Watchers

Forks

Packages

No packages published