Quick Start¶
Get CulicidaeLab Server up and running in minutes with this quick start guide.
Prerequisites¶
Before starting, ensure you have completed the installation process.
Starting the Application¶
CulicidaeLab Server consists of two main components that need to be running:
1. Start the Backend API Server¶
Open a terminal and navigate to your project directory:
cd culicidaelab-server
source .venv/bin/activate # On Windows: .venv\Scripts\activate
uvicorn backend.main:app --port 8000 --host 127.0.0.1
The backend API will be available at: - API Base: http://localhost:8000 - Interactive API Documentation (Swagger): http://localhost:8000/docs - Alternative API Documentation (ReDoc): http://localhost:8000/redoc
2. Start the Frontend Application¶
Open a new terminal and navigate to your project directory:
cd culicidaelab-server
source .venv/bin/activate # On Windows: .venv\Scripts\activate
solara run frontend.main
The frontend application will be available at http://localhost:8765 (or the port shown in your terminal).
First Steps¶
1. Explore the Web Interface¶
- Open your browser and go to
http://localhost:8765 - You'll see the CulicidaeLab Server homepage with navigation to different features
- Explore the main sections:
- Species Prediction: Upload mosquito images for AI-powered identification
- Interactive Map: View mosquito observations and distribution data
- Species Gallery: Browse information about different mosquito species
- Disease Information: Learn about mosquito-borne diseases
2. Test Species Prediction¶
- Navigate to the Species Prediction page
- Upload a mosquito image (JPEG, PNG formats supported)
- Wait for the AI model to process the image
- Review the prediction results with confidence scores
3. Explore the Interactive Map¶
- Go to the Map Visualization page
- View sample observation data plotted on the interactive map
- Click on markers to see detailed observation information
- Use map controls to zoom and pan around different regions
4. Browse the API Documentation¶
- Visit
http://localhost:8000/docsfor interactive API documentation - Explore available endpoints:
/predict/species- Species prediction from images/observations- Mosquito observation data/species- Species information/diseases- Disease information- Try out API endpoints directly from the documentation interface
Basic Usage Examples¶
Making API Calls¶
You can interact with the API using curl, Python requests, or any HTTP client:
# Get all species
curl http://localhost:8000/species
# Get observations with limit
curl http://localhost:8000/observations?limit=10
# Get disease information
curl http://localhost:8000/diseases
Python API Usage¶
import requests
# Get species data
response = requests.get("http://localhost:8000/species")
species_data = response.json()
# Upload image for prediction (example)
with open("mosquito_image.jpg", "rb") as f:
files = {"file": f}
response = requests.post("http://localhost:8000/predict/species", files=files)
prediction = response.json()
Configuration¶
Basic Configuration¶
The application uses default settings that work for most development scenarios. For custom configuration:
- Backend Configuration: Edit
backend/.envfile - Frontend Configuration: Modify
frontend/config.py
Common Configuration Options¶
- API Port: Change the backend port by modifying the
uvicorncommand - Frontend Port: Solara will automatically select an available port
- Database Path: Configure LanceDB path in backend configuration
- Model Settings: Adjust AI model parameters in the backend configuration
Troubleshooting¶
Application Won't Start¶
-
Check Python Environment:
-
Verify Dependencies:
-
Check Port Availability:
- Ensure ports 8000 and 8765 are not in use by other applications
- Use different ports if needed:
uvicorn backend.main:app --port 8001
Performance Issues¶
- GPU Not Detected:
- Check NVIDIA drivers and CUDA installation
-
The application will fall back to CPU processing automatically
-
Slow Predictions:
- Ensure GPU is properly configured for faster inference
-
Consider using smaller image sizes for faster processing
-
Memory Issues:
- Reduce batch sizes in model configuration
- Close other memory-intensive applications
Common Error Messages¶
- "Module not found": Ensure virtual environment is activated and dependencies are installed
- "Port already in use": Change the port number or stop the conflicting process
- "Database not found": Run the database initialization script again
Next Steps¶
Now that you have CulicidaeLab Server running:
- Learn More: Read the User Guide for detailed feature documentation
- Develop: Check the Developer Guide for development information
- Deploy: See the Deployment Guide for production deployment
- Contribute: Review the Contributing Guidelines to contribute to the project
Getting Help¶
If you encounter issues:
- Check the troubleshooting guide
- Search GitHub Issues
- Ask questions in GitHub Discussions
- Contact the team at culicidaelab@gmail.com