Omgwebapp screenshot

Omgwebapp

Author Avatar Theme by Jamesob
Updated: 8 Sep 2020
6 Stars

A minimal flask/react/webpack boilerplate internet starter kit thing

Categories

Overview

omgwebapp is a minimal flask/react/webpack starter kit designed to make the process of building a modern web application easier. It provides a simple and fully-featured configuration for frontend development using webpack. On the backend, it uses the Flask framework along with the peewee ORM to provide a light and simple server setup. The kit also includes a functioning asynchronous worker powered by a database queue, a sleep loop, and no extra dependencies. Overall, omgwebapp aims to be a lightweight and extensible solution for getting a basic web application up and running quickly.

Features

  • Frontend:
    • Simple webpack configuration with typescript enabled, PostCSS configured, and bootstrap integration.
    • React-router integration with a minimal and sensible configuration.
    • No Redux for state management, instead favors hooks.
  • Backend:
    • Python 3.8 with Flask framework.
    • ORM support with peewee.
    • Asynchronous worker functionality with a database queue and sleep loop.
    • Easy testing with py.test and in-memory fixture database setup.
  • Dockerized development environment:
    • All dependencies are managed within Docker containers.
    • Straightforward swapping of components, allowing the use of different frameworks and databases.
    • The server container serves all files, including static files and the frontend application.
    • The webpack container compiles frontend JavaScript and places it in the /build directory, which is shared with the server container.
    • Includes a sensible logging configuration and a makefile for easy management.

Installation

To install omgwebapp, follow these steps:

  1. Install Docker and Docker Compose on your machine.
  2. Clone the omgwebapp repository to your local machine.
  3. Open a terminal and navigate to the cloned repository.
  4. Run the following command to start the development environment:
    docker-compose up -d
    
  5. Access the web application by opening a browser and navigating to http://localhost:5000.

Summary

omgwebapp is a minimal flask/react/webpack starter kit that provides a lightweight and extensible solution for building web applications. It offers a straightforward setup with pre-configured frontend and backend components, making it easy to start developing without spending time on boilerplate code. The kit includes features such as TypeScript support, PostCSS configuration, and bootstrap integration on the frontend, while providing a light and simple backend setup with Flask and the peewee ORM. With its Dockerized development environment, swapping components and scaling the application becomes hassle-free. While not suitable for heavy-duty applications, omgwebapp is a great choice for lightweight web applications with room to grow.