Set up VisionForge on your system with this comprehensive installation guide.
VisionForge consists of two main components:
- Backend: Django-based API server
- Frontend: React-based web interface
Before installing VisionForge, ensure you have:
- Python 3.8+ - Backend runtime
- Node.js 16+ - Frontend development
- npm or yarn - Package manager
- Git - Version control
- VS Code - Code editor with extensions
- Google Gemini API Key - For AI assistant features
-
Clone the repository
git clone https://github.com/devgunnu/visionforge.git cd visionforge -
Install backend dependencies
cd project pip install -r requirements.txt -
Install frontend dependencies
cd frontend npm install
- Download and extract the ZIP file
- Follow steps 2-3 from Option 1
-
Navigate to project directory
cd visionforge/project -
Create virtual environment (recommended)
python -m venv venv # On Windows venv\Scripts\activate # On macOS/Linux source venv/bin/activate
-
Install Python dependencies
pip install -r requirements.txt
-
Set up environment variables
cp .env.example .env
Edit
.envfile and add your API keys:GEMINI_API_KEY=your_gemini_api_key_here
-
Initialize database
python manage.py migrate
-
Create superuser (optional)
python manage.py createsuperuser
-
Navigate to frontend directory
cd visionforge/project/frontend -
Install Node.js dependencies
npm install # or yarn install -
Set up environment variables
cp .env.example .env.local
-
Navigate to project directory
cd visionforge/project -
Start Django server
python manage.py runserver
-
Verify backend is running
- Open
http://localhost:8000in browser - You should see Django welcome page or API documentation
- Open
-
Navigate to frontend directory
cd visionforge/project/frontend -
Start development server
npm run dev # or yarn dev -
Access VisionForge
- Open
http://localhost:5173in browser - You should see the VisionForge interface
- Open
# Test API endpoints
curl http://localhost:8000/api/projects/- Open browser developer tools
- Check for any console errors
- Verify network requests to backend
Problem: Port 8000 is already in use
Solution:
# Kill process on port 8000
# On Windows
netstat -ano | findstr :8000
taskkill /PID <PID> /F
# On macOS/Linux
lsof -ti:8000 | xargs kill -9
# Or use different port
python manage.py runserver 8080Problem: Node.js version not supported
Solution:
# Check current version
node --version
# Upgrade Node.js using nvm
nvm install 18
nvm use 18Problem: ModuleNotFoundError
Solution:
# Reinstall dependencies
pip install -r requirements.txt --force-reinstall
# Or upgrade pip first
pip install --upgrade pipProblem: CORS policy: No 'Access-Control-Allow-Origin'
Solution:
- Ensure both servers are running
- Check backend CORS settings in
settings.py - Verify frontend API URL configuration
Problem: django.db.utils.OperationalError
Solution:
# Delete and recreate database
rm db.sqlite3
python manage.py migrate-
Create Dockerfile
# Backend Dockerfile FROM python:3.9 WORKDIR /app COPY requirements.txt . RUN pip install -r requirements.txt COPY . . CMD ["python", "manage.py", "runserver", "0.0.0.0:8000"]
-
Create docker-compose.yml
version: '3.8' services: backend: build: ./project ports: - "8000:8000" environment: - GEMINI_API_KEY=${GEMINI_API_KEY} frontend: build: ./project/frontend ports: - "5173:5173" depends_on: - backend
-
Run with Docker
docker-compose up
Install these extensions for optimal development:
{
"recommendations": [
"ms-python.python",
"ms-python.flake8",
"ms-python.black-formatter",
"bradlc.vscode-tailwindcss",
"esbenp.prettier-vscode",
"ms-vscode.vscode-typescript-next"
]
}git config --global user.name "Your Name"
git config --global user.email "your.email@example.com"-
Set environment variables
export DEBUG=False export SECRET_KEY=your_production_secret_key export ALLOWED_HOSTS=yourdomain.com
-
Collect static files
python manage.py collectstatic
-
Use production server
pip install gunicorn gunicorn --bind 0.0.0.0:8000 backend.wsgi:application
-
Build for production
npm run build
-
Serve static files
npm install -g serve serve -s dist
Before proceeding:
- Python 3.8+ installed
- Node.js 16+ installed
- Backend dependencies installed
- Frontend dependencies installed
- Database migrated
- Environment variables configured
- Backend server running on port 8000
- Frontend server running on port 5173
- No CORS errors in browser console
- API endpoints accessible
If you encounter issues:
-
Check the logs:
- Backend: Django console output
- Frontend: Browser developer tools
-
Verify requirements:
- Python and Node.js versions
- All dependencies installed
-
Consult documentation:
-
Community support:
- Join our Discord community
- Ask questions on GitHub Discussions
Ready to start? → Quick Start Guide