MiniSearch / docs /quick-start.md
github-actions[bot]
Sync from https://github.com/felladrin/MiniSearch
10d1fd4
# Quick Start
## Prerequisites
- Docker Desktop or Docker Engine
- Node.js 22+ (for local development only)
- Git
## Installation & Running
### Development (Recommended for Contributing)
```bash
# Clone the repository
git clone https://github.com/felladrin/MiniSearch.git
cd MiniSearch
# Start all services (SearXNG, llama-server, Node.js app)
docker compose up
```
Access the application at `http://localhost:7861`
The development server includes:
- Hot Module Replacement (HMR) for instant code changes
- Full dev tools and source maps
- Live code watching with volume mounts
### Production
```bash
# Build and start production containers
docker compose -f docker-compose.production.yml up --build
```
Access at `http://localhost:7860`
Production mode:
- Pre-built optimized assets
- No dev tools or HMR
- Optimized Docker layer caching
## First Configuration
### No Configuration Required (Default)
MiniSearch works out of the box with browser-based AI inference. Search works immediately, and AI responses use on-device models via WebLLM (WebGPU).
### Optional: Enable AI Response
1. Open the application
2. Click **Settings** (gear icon)
3. Toggle **Enable AI Response**
4. The app will download ~300MB-1GB model files on first use
5. Subsequent loads are instant (cached in IndexedDB)
### Optional: Restrict Access
Add access keys to prevent unauthorized usage:
```bash
# Create .env file
echo 'ACCESS_KEYS="my-secret-key-1,my-secret-key-2"' > .env
# Restart containers
docker compose up --build
```
Users will be prompted to enter an access key before using the app.
## Development Without Docker
```bash
# Install dependencies
npm install
# Start development server
npm run dev
# In another terminal, start SearXNG (or use standalone instance)
# See SearXNG documentation for setup
```
Access at `http://localhost:7860`
## Verification
### Test Search
1. Enter any query in the search box
2. Press Enter or click Search
3. Results should appear within 2-5 seconds
### Test AI Response
1. Toggle "Enable AI Response" in Settings
2. Search for "What is quantum computing?"
3. After search results load, an AI-generated response should appear with citations
### Test Chat
1. After getting an AI response
2. Type a follow-up question like "Tell me more"
3. The AI should respond using conversation context
## Common Issues
### Issue: Search returns no results
**Solution**: Verify SearXNG is running. Check container logs:
```bash
docker compose logs searxng
```
### Issue: AI response never loads
**Solution**: Check browser console for errors. Common causes:
- WebGPU not supported (use Wllama inference instead)
- Model download blocked by firewall
- Insufficient disk space for model caching
### Issue: Access key not working
**Solution**: Ensure `ACCESS_KEYS` is set in `.env` file and containers were rebuilt with `--build` flag.
### Issue: Port already in use
**Solution**: Change ports in `docker-compose.yml`:
```yaml
ports:
- "7862:7860" # Use 7862 instead of 7861
```
## Next Steps
- **Customize AI**: See `docs/ai-integration.md` for model selection and inference options
- **Configure**: See `docs/configuration.md` for all environment variables and settings
- **Architecture**: See `docs/overview.md` for system design
- **Contributing**: See `docs/pull-requests.md` for development workflow