Advanced astrological and human design application that combines traditional astrology with Human Design system analysis.
- 🌟 Astrological calculations using PyEphem
- 🎨 Human Design analysis and chart generation
- 💬 Interactive chat interface with personalized guidance
- 📊 PDF chart generation with detailed analysis
- 🚀 RESTful API with Swagger documentation
- 🎯 Modern React frontend with Tailwind CSS
- 📱 Responsive and intuitive UI/UX
- Node.js & Express
- Python (PyEphem, Pandas, ReportLab)
- SQLite Database
- Swagger/OpenAPI
- Winston Logger
- React with TypeScript
- Tailwind CSS
- Axios for API calls
- Modern UI components
- Node.js (>=18.0.0)
- npm (>=9.0.0)
- Python (>=3.8)
- pip
- Clone the repository
git clone https://github.com/chipoto69/space_compass.git
cd space_compass- Install dependencies
# Install root dependencies
npm install
# Install all dependencies (frontend & backend)
npm run install-all- Set up Python environment
cd backend
python -m venv venv
# On Windows:
venv\Scripts\activate
# On macOS/Linux:
source venv/bin/activate
# Install Python dependencies
pip install pyephem pandas reportlab- Create required directories
mkdir -p backend/data/charts
mkdir -p backend/logs- Environment Setup
Create .env files in both frontend and backend directories:
backend/.env:
PORT=5000
NODE_ENV=development
PYTHON_PATH=python3
DB_PATH=data/astro_guide.db
CHARTS_DIR=data/charts
LOGS_DIR=logsfrontend/.env:
PORT=3001
REACT_APP_API_URL=http://localhost:5000
REACT_APP_WEBSOCKET_URL=ws://localhost:5000
REACT_APP_CHARTS_URL=http://localhost:5000/charts- Development Mode
# Start both frontend and backend in development mode
npm run dev- Production Mode
# Build and start the application
npm run build
npm startOnce the server is running, access the API documentation at:
http://localhost:5000/api-docs
enhanced-astro/
├── backend/
│ ├── src/
│ │ ├── server.js
│ │ └── utils/
│ │ ├── astro_calculator.py
│ │ ├── human_design.py
│ │ ├── chart_generator.py
│ │ └── logger.js
│ ├── data/
│ │ ├── charts/
│ │ └── cities.json
│ └── logs/
├── frontend/
│ ├── src/
│ │ ├── components/
│ │ ├── pages/
│ │ ├── utils/
│ │ └── App.tsx
│ └── public/
└── package.json
npm start- Start both frontend and backendnpm run server- Start backend server onlynpm run client- Start frontend applicationnpm run install-all- Install all dependenciesnpm run dev- Run in development modenpm run build- Build frontend for productionnpm run test- Run testsnpm run lint- Run linting
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the ISC License - see the LICENSE file for details.
For support, please open an issue in the repository.