Skip to content

FlaskVanguard-Boilerplate is a robust Flask framework for building scalable web applications. It features advanced security, rate limiting, compression, logging, and Flask Blueprints for modular design. Ideal for enterprise projects.

License

Notifications You must be signed in to change notification settings

jennifer-ha/FlaskVanguard

Repository files navigation

FlaskVanguard-Boilerplate

Welcome to FlaskVanguard-Boilerplate, a cutting-edge, scalable framework designed for building high-performance web applications with Flask. This boilerplate integrates advanced security measures, efficient rate limiting, and robust logging capabilities, offering a comprehensive foundation for enterprise-level projects.

Key Features

  • Advanced Security: Comes pre-configured with Flask-Talisman and CORS to secure your application against common vulnerabilities.
  • Rate Limiting: Manage and mitigate traffic effectively to prevent overloads and ensure seamless operation during peak loads.
  • Modular Design: Utilizes Flask Blueprints to organize your application into distinct components, making it easier to maintain and scale.
  • Production-Ready: Includes Dockerfiles for both development and production to streamline deployment processes.
  • Logging and Monitoring: Implements a sophisticated logging system to aid in monitoring and diagnosing issues in real-time.

Getting Started

Follow these steps to set up and run FlaskVanguard-Boilerplate on your local machine for development and testing purposes.

Prerequisites

  • Python 3.6 or higher
  • Docker
  • Git

Installation

  1. Clone the repository
    git clone https://github.com/jennifer-ha/FlaskVanguard.git
    cd FlaskVanguard
    
  2. Set up a virtual environment
    python -m venv venv 
    source venv/bin/activate  # On Windows use `venv\Scripts\activate`
    
  3. Install dependencies
    pip install -r requirements.txt
    
  4. Run the application
    gunicorn wsgi:app
    
  5. Visit/test the application

Docker Setup

Development / Testing Environment

To run the application in a Docker container for development or testing, follow these steps:

  1. Build and run the Docker environment
    docker-compose up --build
    
  2. Stopping Docker Containers To stop and remove all containers, networks, and volumes created by Docker Compose, you can use the following command:
    docker-compose down
    

Production Environment

For deploying the application in a production environment, use the production-specific Docker Compose file:

  1. Build and run the Docker environment for production
    docker-compose -f docker-compose.prod.yml up --build
    
  2. Stopping Docker Containers
    docker-compose -f docker-compose.prod.yml down
    

Testing

cd tests
pytest

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

Fork the Project Create your Feature Branch (git checkout -b feature/AmazingFeature) Commit your Changes (git commit -m 'Add some AmazingFeature') Push to the Branch (git push origin feature/AmazingFeature) Open a Pull Request

License

Distributed under the MIT License. See LICENSE for more information.

About

FlaskVanguard-Boilerplate is a robust Flask framework for building scalable web applications. It features advanced security, rate limiting, compression, logging, and Flask Blueprints for modular design. Ideal for enterprise projects.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published