Command-line interface for IntellyWeave.
IntellyWeave provides the elysia CLI for server management and common operations.
Activate the virtual environment before using CLI commands:
cd backend
source .venv/bin/activateStart the IntellyWeave server.
elysia start [OPTIONS]Options:
| Option | Default | Description |
|---|---|---|
--port |
8000 |
Server port |
--host |
localhost |
Server host |
--reload |
True |
Enable hot reload |
Examples:
# Default (localhost:8000 with reload)
elysia start
# Custom port
elysia start --port 8080
# Production mode (no reload)
elysia start --reload=False
# Bind to all interfaces
elysia start --host 0.0.0.0Expected Output:
INFO: Uvicorn running on http://localhost:8000 (Press CTRL+C to quit)
INFO: Started reloader process [12345]
INFO: Started server process [12346]
INFO: Waiting for application startup.
INFO: Application startup complete.
These scripts are in the scripts/ directory at the repository root.
Initial project setup.
scripts/setup.shWhat it does:
- Creates Python virtual environment
- Installs backend dependencies
- Installs frontend dependencies (pnpm)
- Creates
.envfrom template - Optionally runs build
Run both frontend and backend in development mode.
scripts/dev.shWhat it does:
- Checks ports 3000 and 8000
- Starts Next.js dev server (port 3000)
- Starts FastAPI server (port 8000)
- Handles graceful shutdown
Output:
🚀 Starting Elysia Development Environment
✓ Environment configured for development
✓ Frontend server started (PID: 12345)
✓ Backend server started (PID: 12346)
🎉 Development servers are running!
Frontend: http://localhost:3000
Backend API: http://localhost:8000
Press Ctrl+C to stop both servers
Build frontend for production.
scripts/build.shWhat it does:
- Builds Next.js frontend
- Exports static files
- Copies to backend for serving
Kill process on a specific port.
scripts/kill-process.sh <port>Example:
scripts/kill-process.sh 8000cd backend
source .venv/bin/activate
# Install base dependencies
pip install -e .
# Install with dev dependencies
pip install -e ".[dev]"
# Install with NER support
pip install -e ".[ner]"
# Install all optional dependencies
pip install -e ".[dev,ner]"cd frontend
# Install dependencies
pnpm install
# Development server
pnpm run dev
# Production build
pnpm run build
# Export static files
pnpm run export
# Build and export to backend
pnpm run assemble
# Lint
pnpm run lint
# Tests
pnpm testcd backend
source .venv/bin/activate
# Run all tests
pytest tests/
# Run specific test file
pytest tests/requires_env/api/test_collections.py
# Run with coverage
pytest --cov=elysia tests/
# Verbose output
pytest -v tests/cd frontend
# Run tests (currently lint)
pnpm test
# Run lint
pnpm run lintdocker compose up -d weaviatedocker compose psdocker compose logs weaviatedocker compose downdocker compose up -dgit fetch upstream-backend main
git subtree pull --prefix=backend upstream-backend main --squashgit fetch upstream-frontend main
git subtree pull --prefix=frontend upstream-frontend main --squash# Find process
lsof -i :8000
# Kill it
kill -9 <PID>
# Or use helper script
scripts/kill-process.sh 8000# Delete and recreate
rm -rf backend/.venv
cd backend
python3.12 -m venv .venv
source .venv/bin/activate
pip install -e .# Clear and reinstall
cd frontend
rm -rf node_modules pnpm-lock.yaml
pnpm install- Installation Guide - Setup instructions
- Environment Variables - Configuration
- Contributing - Development workflow