Omgwebapp

screenshot of Omgwebapp
flask
react
bootstrap

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

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.

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.

flask
Flask

Flask is a lightweight and popular web framework for Python, known for its simplicity and flexibility. It is widely used to build web applications, providing a minimalistic approach to web development with features like routing, templates, and support for extensions.

react
React

React is a widely used JavaScript library for building user interfaces and single-page applications. It follows a component-based architecture and uses a virtual DOM to efficiently update and render UI components

bootstrap
Bootstrap

Bootstrap is the most popular CSS Framework for developing responsive and mobile-first websites.

webpack
Webpack

Webpack is a popular open-source module bundler for JavaScript applications that bundles and optimizes the code and its dependencies for production-ready deployment. It can also be used to transform other types of assets such as CSS, images, and fonts.