Skip to content

jteuber/QtLager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

QtLager

Framework for Redux-like UI programming with C++

Introduction

In a nutshell, QtLager is a framework for React/Redux-like programming for C++. It is based on Qt, a widespread, platform-independend library for UI development, and Lager, an excellent library for functional/Redux-like programming for C++ by Juanpe. With this framework you can create fast and responsive desktop and mobile applications.

Using QtLager

This framework is still in very early development. It is going to change a lot in the next few weeks, so be careful if you already want to use it and maybe contact me for further pointers.

  • clone this repo into your project folder or add it as a submodule
  • Do a git submodule update --init --recursive
  • Lager needs to be configured:
    • go to Core/extern/lager
    mkdir -p build && cd build
    cmake .. -D lager_BUILD_TESTS=OFF -D lager_BUILD_EXAMPLES=OFF -D lager_BUILD_DOCS=OFF
  • Create a new cmake subdirectory-project in the parent folder and add Core
  • Create at least one reducer and one view plugin
    • you can create as many reducer and view plugins as you want
  • In the main view plugin create a qrc-file with a main.qml in it
    • this is the qml-file that will be executed at startup (qrc:/main.qml)
    • other views can be included by setting context properties on the root context
  • Define the actions and the model in the respective files in Core/Sources

Goals

My goals with this framework are:

  • Quick and easy start even for people new to C++ and functional concepts
  • Minimal development overhead through hot-reloading
  • Clear instructions and tutorials
  • Easy deployment and auto-update
  • Well tested and easy to test

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published