Skip to main content

An AI-powered cosmic Valentine card generator for the terminal.

Project description

Cosmic Cupid CLI 🌹✨

An AI-powered cosmic Valentine card generator for the terminal. Generate personalized astrological compatibility readings and beautiful Valentine cards for you and your cosmic soulmate.

Features

Astrological Compatibility - Generate detailed cosmic compatibility readings between two people based on their birth charts

💖 Beautiful Terminal UI - Rich, colorful, and interactive command-line interface with animations

📸 Card Generation - Export your cosmic destiny cards as beautiful PNG images

🔐 GitHub OAuth - Secure authentication with GitHub for personalized experiences

🎨 Customizable Output - Control card styling and formatting

Installation

Quick Start with pip

pip install cosmic-cupid

From GitHub (development)

git clone https://github.com/Milcah03/cosmic-cupid-cli.git
cd cosmic-cupid-cli
pip install -e .

Usage

Running Cosmic Cupid

cosmic-cupid

The application will:

  1. Prompt you to authenticate with GitHub (type /login)
  2. Ask for you and your partner's names and birthdates
  3. Generate a cosmic compatibility reading
  4. Create and save a beautiful Valentine card image

Setting up GitHub OAuth

  1. Create a GitHub OAuth App (see AUTH_SETUP.md for detailed steps)
  2. Set environment variables:
    export GITHUB_OAUTH_CLIENT_ID="your_client_id"
    export GITHUB_OAUTH_CLIENT_SECRET="your_client_secret"
    
  3. Run cosmic-cupid

Note: On your first run, type /login at the authentication prompt to begin the OAuth flow.

Requirements

  • Python 3.8 or higher
  • Internet connection (for GitHub OAuth)
  • Modern terminal with Unicode support (for best visual experience)

Dependencies

  • rich - Beautiful terminal formatting
  • kerykeion - Astrological calculations
  • Pillow - Image generation
  • requests - HTTP communication

Documentation

Examples

Generate a Compatibility Reading

$ cosmic-cupid
🌹 COSMIC CUPID 2026 🌹
A partner ritual for the fated.

❤ YOUR DETAILS
Your Name: Alice
Birthdate: Dec 03 1990

❤ PARTNER DETAILS
Partner Name: Bob
Birthdate: May 20 1992

✨ Destiny Card Saved ✨
~/cosmic-destiny/Alice_Bob.png

Development

Setup Development Environment

git clone https://github.com/Milcah03/cosmic-cupid-cli.git
cd cosmic-cupid-cli
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
pip install -e ".[dev]"

Running Tests

pytest

Code Style

This project uses black for code formatting:

black src/

Architecture

  • src/main.py - Application entry point and main flow
  • src/auth.py - GitHub OAuth authentication
  • src/engine.py - Astrological calculations
  • src/ui.py - Terminal UI components
  • src/exporter.py - Image generation and export

Security

  • Tokens are stored locally in ~/.cosmic-cupid/github_token.json
  • OAuth credentials should be set via environment variables
  • No credentials are committed to version control
  • See AUTH_SETUP.md for security best practices

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

See CONTRIBUTING.md for more details.

License

This project is licensed under the MIT License - see LICENSE file for details.

Acknowledgments

  • Powered by Kerykeion for astrological calculations
  • Beautiful terminal UI with Rich
  • GitHub OAuth integration for secure authentication

Support

For issues, questions, or suggestions, please open an issue on GitHub Issues.


Made with 💖 and ✨ cosmic energy

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

cosmic_cupid-0.1.0.tar.gz (12.4 kB view details)

Uploaded Source

Built Distribution

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

cosmic_cupid-0.1.0-py3-none-any.whl (12.3 kB view details)

Uploaded Python 3

File details

Details for the file cosmic_cupid-0.1.0.tar.gz.

File metadata

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

File hashes

Hashes for cosmic_cupid-0.1.0.tar.gz
Algorithm Hash digest
SHA256 246a20f7921d3db57b318276787198b6d316cac4be34055ff6a6bebb752e9ae5
MD5 349b6751b87114fbae7c1247e31aa098
BLAKE2b-256 59ab60545f22ad12cd6871304af758fec89ba06c494a37eb74b84a1427fb87d9

See more details on using hashes here.

Provenance

The following attestation bundles were made for cosmic_cupid-0.1.0.tar.gz:

Publisher: publish.yml on Milcah03/cosmic-cupid-cli

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

File details

Details for the file cosmic_cupid-0.1.0-py3-none-any.whl.

File metadata

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

File hashes

Hashes for cosmic_cupid-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 08cce943ed2c3fb463eaebcaa64672f5c073be816a23ce330dbc7e42f87a9361
MD5 ef5f0074c85641bedd8800cf61595009
BLAKE2b-256 3343cc64100a9e83cd72cfebade5e95675f68399411468b63690c71989139c89

See more details on using hashes here.

Provenance

The following attestation bundles were made for cosmic_cupid-0.1.0-py3-none-any.whl:

Publisher: publish.yml on Milcah03/cosmic-cupid-cli

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