A Flask-based web application that helps organizations find the right security vendor for their projects based on various requirements including project type, budget, compliance needs, and technical specifications.
- Interactive form with comprehensive project assessment
- Real-time progress tracking during vendor analysis
- Responsive web interface with modern styling
- Support for various project types, industries, and compliance requirements
- Budget and timeline considerations
- Technology stack compatibility assessment
- Python 3.11 or higher
- uv package manager
-
Install uv (if not already installed):
curl -LsSf https://astral.sh/uv/install.sh | sh -
Clone the repository:
git clone <repository-url> cd <repository-name>
-
Install dependencies:
uv sync
Start the Flask development server:
uv run python app.pyThe application will be available at http://localhost:5000
For production deployment, you can use a WSGI server like Gunicorn:
# Run with gunicorn
uv run gunicorn -w 4 -b 0.0.0.0:8000 app:app- Open your browser and navigate to
http://localhost:5000 - Fill out the comprehensive security vendor selection form:
- Project Information: Name, type, and company size
- Security Requirements: Assessment types, priority level, budget, and timeline
- Technical Requirements: Technology stack, complexity, and codebase size
- Compliance & Industry: Industry type, compliance requirements, and data sensitivity
- Click "Find My Security Vendor" to get a recommendation
- The system will analyze your requirements and recommend an appropriate security vendor
To add new Python packages:
uv add package-nameThe application runs in debug mode by default when using uv run python app.py. This enables:
- Automatic reloading on code changes
- Detailed error messages
- Debug toolbar (if installed)
You can set environment variables for configuration:
export FLASK_ENV=development
export FLASK_DEBUG=1
uv run python app.pyGET /- Main application pagePOST /api/recommend- Vendor recommendation endpoint (accepts form data and returns JSON)