Shell Script Checker API
Validate and analyse shell scripts with a simple REST API. Built with Flask, async HTTP, and ready for cloud deployment.
Explore the DocsOverview
sh-checker-api provides HTTP endpoints for validating and analyzing shell scripts. The service is containerized and designed for cloud deployment with health monitoring capabilities.
A Flask-based API service for shell script checking and validation, ready to integrate into your CI/CD pipelines or developer tools.
import aiohttp
app = Flask(__name__)
# Shell validation endpoint
@app.route('/check')
def check_script():
return {"status": "valid"}
Key Features
REST API
Flask-based web service for shell script validation with simple, intuitive endpoints.
Async HTTP Client
Built with aiohttp and curl_cffi for efficient, non-blocking external requests and fast validation.
Production Ready
Gunicorn WSGI server with multiple workers for reliable, scalable deployments in any environment.
Health Monitoring
Built-in health check endpoint for container orchestration and monitoring systems.
Tech Stack
-
๐
Backend
Python 3.11, Flask 3.0+ -
โก
HTTP Client
aiohttp 3.9+, curl_cffi 0.7+ -
๐
Server
Gunicorn 21.0+ with 4 workers -
๐ณ
Container
Docker with health checks -
โ๏ธ
Deployment
Procfile for Heroku-style platforms
Try It
Quick Start
Docker
docker run -p 8080:8080 sh-checker-api
Local Development
python server.py
API Endpoints
-
GET
/health- Health check endpoint for monitoring -
Additional endpoints defined in
server.py(see source code for complete API)
Example cURL Request
-H "Content-Type: application/json" \
-d '{"script": "#!/bin/bash\necho Hello"}'
Deployment
The service includes configuration for:
-
๐ณ Docker
Multi-stage build with health checks -
โ๏ธ Galaxy Cloud
Deployment instructions ingalaxy-cloud-deployment.md -
โ๏ธ Heroku-style
ViaProcfile
Configuration
-
Port
8080 (configurable) -
Workers
4 Gunicorn workers -
Timeout
120 seconds request timeout -
Health Check
30s interval, 40s startup grace period