Prerequisites
Before installing Quail BI, ensure you have the following:Node.js
Version 18.17.0 or higher
Package Manager
pnpm 10.10.0 (recommended), npm, or yarn
MongoDB
MongoDB instance for storing user data and configurations
Supabase
Supabase project for authentication
Quail is a discontinued project. This documentation is for self-hosting purposes.
Step 1: Clone the Repository
Clone the Quail repository from GitHub:Step 2: Install Dependencies
Quail uses pnpm as its package manager:The project specifies Node.js ≥18.17.0 in
package.json engines field. Using an older version may cause compatibility issues.Step 3: Configure Environment Variables
Copy the example environment file:.env.local with your configuration. See Environment Variables for detailed explanations of each variable.
Required Variables
At minimum, you must configure:.env.local
Step 4: Set Up Database Services
Quail requires two database services:MongoDB Setup
Create MongoDB Database
Create a MongoDB database using MongoDB Atlas, a local instance, or any MongoDB-compatible service.
Supabase Setup
Create Supabase Project
Sign up at supabase.com and create a new project.
Get API Keys
Navigate to Settings → API in your Supabase dashboard and copy:
- Project URL
anonpublickeyservice_rolesecretkey
Step 5: Run Development Server
Start the development server:Quail uses Turbopack for faster development builds via the
--turbopack flag in the dev script.Step 6: Build for Production
When you’re ready to deploy:Standalone Build
The build script includes additional steps for standalone deployment:package.json
Deployment Options
Vercel (Recommended)
Configure Environment Variables
Add all required environment variables in the Vercel project settings
Docker
Create aDockerfile:
Dockerfile
Other Platforms
- AWS
- Azure
- GCP
- Self-Hosted
Deploy to AWS using:
- Amplify: Connect GitHub repo for automatic deployments
- Elastic Beanstalk: Upload standalone build
- ECS: Use Docker container
- Lambda: Use Serverless Next.js
Post-Installation
After installation:Troubleshooting
Build fails with 'Cannot find module'
Build fails with 'Cannot find module'
Ensure you’ve run
pnpm install and all dependencies are installed:Application starts but shows error page
Application starts but shows error page
Check that all required environment variables are set:
Cannot connect to MongoDB
Cannot connect to MongoDB
Verify your MongoDB connection string:
- Check the URI format
- Ensure network access is allowed
- Verify username and password
- Test connection with MongoDB Compass
Supabase authentication fails
Supabase authentication fails
Verify Supabase configuration:
- Check that all three Supabase environment variables are set
- Verify the project URL is correct
- Ensure keys are from the same project
- Check that email authentication is enabled in Supabase dashboard
Next Steps
Environment Variables
Complete guide to all environment variables
Database Setup
Detailed MongoDB and Supabase configuration
Configuration
Customize Quail for your needs
Security
Secure your deployment
