docs: Comprehensive startup guide + troubleshooting
Some checks failed
CI / Frontend Lint & Type Check (push) Has been cancelled
CI / Frontend Build (push) Has been cancelled
CI / Backend Lint (push) Has been cancelled
CI / Backend Tests (push) Has been cancelled
CI / Docker Build (push) Has been cancelled
CI / Security Scan (push) Has been cancelled
Deploy / Build & Push Images (push) Has been cancelled
Deploy / Deploy to Server (push) Has been cancelled
Deploy / Notify (push) Has been cancelled
Some checks failed
CI / Frontend Lint & Type Check (push) Has been cancelled
CI / Frontend Build (push) Has been cancelled
CI / Backend Lint (push) Has been cancelled
CI / Backend Tests (push) Has been cancelled
CI / Docker Build (push) Has been cancelled
CI / Security Scan (push) Has been cancelled
Deploy / Build & Push Images (push) Has been cancelled
Deploy / Deploy to Server (push) Has been cancelled
Deploy / Notify (push) Has been cancelled
README UPDATES: - Added Quick Start section at the top with 2-command startup - Documented common console warnings (SES, PostHog, CSS prefixes) - Explained what errors actually need fixing - Three startup options: Two terminals, start.sh, PM2 - Step-by-step manual setup with verification - Application URLs table IMPORTANT: Backend must be running for CORS errors to disappear!
This commit is contained in:
112
README.md
112
README.md
@ -2,6 +2,47 @@
|
|||||||
|
|
||||||
A professional full-stack application for monitoring domain name availability with TLD price tracking and intelligence.
|
A professional full-stack application for monitoring domain name availability with TLD price tracking and intelligence.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## ⚡ Quick Start (Local Development)
|
||||||
|
|
||||||
|
**Terminal 1 - Backend:**
|
||||||
|
```bash
|
||||||
|
cd backend
|
||||||
|
source venv/bin/activate
|
||||||
|
uvicorn app.main:app --reload --host 0.0.0.0 --port 8000
|
||||||
|
```
|
||||||
|
|
||||||
|
**Terminal 2 - Frontend:**
|
||||||
|
```bash
|
||||||
|
cd frontend
|
||||||
|
npm run dev
|
||||||
|
```
|
||||||
|
|
||||||
|
**Access:**
|
||||||
|
- Frontend: http://localhost:3000
|
||||||
|
- Backend: http://localhost:8000
|
||||||
|
- API Docs: http://localhost:8000/docs
|
||||||
|
|
||||||
|
### ⚠️ Common Console Warnings (Can be ignored)
|
||||||
|
|
||||||
|
| Warning | Explanation |
|
||||||
|
|---------|-------------|
|
||||||
|
| `SES Removing unpermitted intrinsics` | MetaMask/browser extension - harmless |
|
||||||
|
| `PostHog CORS blocked` | Normal on localhost, works in production |
|
||||||
|
| `-webkit-text-size-adjust` error | Old CSS prefixes - harmless |
|
||||||
|
| `-moz-column-gap` unknown | Old Firefox prefix - harmless |
|
||||||
|
| `preloaded font not used` | Next.js optimization - harmless |
|
||||||
|
|
||||||
|
### ❌ Actual Errors to Fix
|
||||||
|
|
||||||
|
| Error | Solution |
|
||||||
|
|-------|----------|
|
||||||
|
| `CORS request did not succeed` to localhost:8000 | **Start the backend!** |
|
||||||
|
| `500 Internal Server Error` | Check backend logs, run `python scripts/init_db.py` |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
## Features
|
## Features
|
||||||
|
|
||||||
### Core Functionality
|
### Core Functionality
|
||||||
@ -197,32 +238,61 @@ pounce/
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Quick Start
|
## Full Setup Guide
|
||||||
|
|
||||||
### Prerequisites
|
### Prerequisites
|
||||||
- Python 3.12+
|
- Python 3.12+
|
||||||
- Node.js 18+
|
- Node.js 18+
|
||||||
- npm or yarn
|
- npm or yarn
|
||||||
|
|
||||||
### 🚀 One-Command Setup (Recommended)
|
### 🚀 One-Command Setup (Fresh Install)
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Clone repository
|
# Clone repository
|
||||||
git clone https://git.6bit.ch/yvg/pounce.git
|
git clone https://git.6bit.ch/yvg/pounce.git
|
||||||
cd pounce
|
cd pounce
|
||||||
|
|
||||||
# Run deployment script (sets up everything)
|
# Run deployment script (installs everything + initializes database)
|
||||||
chmod +x deploy.sh
|
chmod +x deploy.sh
|
||||||
./deploy.sh
|
./deploy.sh
|
||||||
|
```
|
||||||
|
|
||||||
# Start both services
|
### 🏃 Starting the Application
|
||||||
|
|
||||||
|
**Option A: Two Terminals (Recommended for Development)**
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Terminal 1 - Backend
|
||||||
|
cd backend
|
||||||
|
source venv/bin/activate
|
||||||
|
uvicorn app.main:app --reload --host 0.0.0.0 --port 8000
|
||||||
|
|
||||||
|
# Terminal 2 - Frontend
|
||||||
|
cd frontend
|
||||||
|
npm run dev
|
||||||
|
```
|
||||||
|
|
||||||
|
**Option B: Single Command (Quick)**
|
||||||
|
|
||||||
|
```bash
|
||||||
chmod +x start.sh
|
chmod +x start.sh
|
||||||
./start.sh
|
./start.sh
|
||||||
```
|
```
|
||||||
|
|
||||||
That's it! Open http://localhost:3000
|
**Option C: PM2 (Production)**
|
||||||
|
|
||||||
### Manual Setup
|
```bash
|
||||||
|
# Backend
|
||||||
|
cd backend && source venv/bin/activate
|
||||||
|
pm2 start "uvicorn app.main:app --host 0.0.0.0 --port 8000" --name pounce-api
|
||||||
|
|
||||||
|
# Frontend
|
||||||
|
cd frontend
|
||||||
|
npm run build
|
||||||
|
pm2 start "npm start" --name pounce-web
|
||||||
|
```
|
||||||
|
|
||||||
|
### 🔧 Manual Setup (Step by Step)
|
||||||
|
|
||||||
#### 1. Clone Repository
|
#### 1. Clone Repository
|
||||||
|
|
||||||
@ -247,11 +317,11 @@ pip install -r requirements.txt
|
|||||||
# Create environment file
|
# Create environment file
|
||||||
cp env.example .env
|
cp env.example .env
|
||||||
|
|
||||||
# Generate secret key and add to .env
|
# Generate secret key
|
||||||
python -c "import secrets; print(f'SECRET_KEY={secrets.token_hex(32)}')"
|
python -c "import secrets; print(secrets.token_hex(32))"
|
||||||
# Edit .env with your SECRET_KEY
|
# Copy the output and paste into .env as SECRET_KEY=...
|
||||||
|
|
||||||
# Initialize database
|
# Initialize database (creates tables + seeds data)
|
||||||
python scripts/init_db.py
|
python scripts/init_db.py
|
||||||
```
|
```
|
||||||
|
|
||||||
@ -275,11 +345,25 @@ echo "NEXT_PUBLIC_API_URL=http://localhost:8000" > .env.local
|
|||||||
npm run dev
|
npm run dev
|
||||||
```
|
```
|
||||||
|
|
||||||
#### 4. Access Application
|
#### 4. Verify Everything Works
|
||||||
|
|
||||||
- **Frontend:** http://localhost:3000
|
```bash
|
||||||
- **Backend API:** http://localhost:8000
|
# Check backend health
|
||||||
- **API Docs:** http://localhost:8000/docs
|
curl http://localhost:8000/health
|
||||||
|
# Should return: {"status":"healthy","service":"DomainWatch","version":"1.0.0"}
|
||||||
|
|
||||||
|
# Open frontend
|
||||||
|
open http://localhost:3000
|
||||||
|
```
|
||||||
|
|
||||||
|
### 📍 Application URLs
|
||||||
|
|
||||||
|
| Service | URL | Description |
|
||||||
|
|---------|-----|-------------|
|
||||||
|
| Frontend | http://localhost:3000 | Main application |
|
||||||
|
| Backend API | http://localhost:8000 | REST API |
|
||||||
|
| API Docs (Swagger) | http://localhost:8000/docs | Interactive API docs |
|
||||||
|
| API Docs (ReDoc) | http://localhost:8000/redoc | Alternative docs |
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user