- Node.js >= 18.0.0
- npm or yarn package manager
git clone https://github.com/raolbyte/Raol-UI.git
cd Raol-UInpm installCreate a .env file in the root directory (optional):
PORT=3000
NODE_ENV=productionnpm startnpm run build
npm run productionThe server will start on port 3000 (or the port specified in your environment variables).
The src/settings.json file controls all aspects of your API service:
{
"name": "Raol Api'S",
"version": "v5.1.1",
"description": "Experience the next generation of API documentation...",
"maintenance": {
"enabled": false
},
"bannerImage": "/src/banner.jpg",
"previewImage": "/src/preview.png",
"header": {
"status": "Online"
},
"apiSettings": {
"creator": "RaolByte",
"requireApikey": false,
"apikey": {
"your-api-key": {
"rateLimit": "5000/day",
"enabled": true
}
}
},
"categories": [
{
"name": "Category Name",
"items": [
{
"name": "API Endpoint Name",
"desc": "Description of the endpoint",
"path": "/endpoint/path",
"status": "ready",
"params": {
"param1": "Parameter description"
}
}
]
}
]
}name- Your API service nameversion- Current version numberdescription- Brief description of your servicebannerImage- Path to banner imagepreviewImage- Path to preview image
"maintenance": {
"enabled": true
}"apiSettings": {
"creator": "Your Team Name",
"requireApikey": false,
"apikey": {
"api-key-name": {
"rateLimit": "5000/day",
"enabled": true
}
}
}"unlimited"- No rate limiting"100/minute"- 100 requests per minute"1000/hour"- 1000 requests per hour"5000/day"- 5000 requests per day
Set requireApikey to true in your settings.json:
"apiSettings": {
"requireApikey": true,
"apikey": {
"your-secret-key": {
"rateLimit": "1000/day",
"enabled": true
}
}
}When API keys are required, include them in your requests:
curl "http://localhost:3000/ai/luminai?text=Hello&apikey=your-secret-key"{
"status": false,
"creator": "RaolByte",
"error": "API key required",
"message": "Please provide a valid API key in the query parameters"
}{
"status": false,
"creator": "RaolByte",
"error": "Invalid API key",
"message": "The provided API key is not valid or does not exist"
}- Default: 50 requests per minute per IP
- Window: 1 minute
- Bypass: When
requireApikeyisfalse, API endpoints bypass global rate limiting
- Configurable per key
- Formats:
unlimited,100/minute,1000/hour,5000/day - Tracking: Per API key, not per IP
{
"status": false,
"creator": "RaolByte",
"error": "Rate limit exceeded",
"message": "You have exceeded the rate limit for this API key"
}Enable maintenance mode to temporarily disable API access:
"maintenance": {
"enabled": true
}- API Endpoints: Return 503 status with maintenance message
- Documentation: Shows maintenance page
- Bypass Paths:
/api/settings,/assets/,/src/,/support
This project is licensed under the MIT License - see the LICENSE file for details.
- Issues: GitHub Issues
- Contact: Support Page
Made with ❤️ by RaolByte
