Code Monkey home page Code Monkey logo

dotherside's Introduction

DOtherSide

License CI codecov Documentation Status

C language library for creating bindings for the Qt QML language.

Documentation: https://filcuc.github.io/dotherside/

Currently the DOtherSide library is used by the following bindings:

  • nimqml, QML bindings for the Nim programming language
  • qml_zig, QML bindings for the Zig programming language

It was historically used by:

  • dqml, QML bindings for the D programming language
  • qml-rust, QML bindings for the Rust programming language

Supported features

The following features are implementable from a binding language

  • Creation of custom QObject
  • Creation of custom QAbstractItemModels (Lists, Tables and Trees)
  • Creation of custom properties, signals and slots
  • Creation of QObjects from QML
  • Registration of singletons in QML
  • Creation of custom image providers

Prebuilt binaries

Currently we provide the prebuilt binaries for Windows through the GitHub releases page or directly as artifacts from Github actions

Change log

The project change log can be read here.

Supported platforms

Currently we support the following platforms/compilers:

  • Linux both 32/64bit with gcc
  • Windows 32/64bit with Visual Studio 2013|2015 Community Edition

Build requirements

You need the following software:

  • Qt 5.12 or higher or Qt 6.2 or higher
  • Linux: gcc 4.8 or later with c++11 support or higher
  • Windows: Visual Studio 2013|2015 Community Edition (Windows) or higher

Qt5 and Qt6 Notes

We support both Qt5 and Qt6 builds but we don't support coesisteance of the DOtherSide library compiled in both ways. In other words the DOtherSide so name is the same compiled with Qt5 or Qt6. This is a current limitation but we could change this in future.

Build instructions:

cd /path/to/cloned/repo
mkdir build
cd build
cmake ..
cmake --build .

Install Instructions

Once you built the package just type

make install

by default cmake will install to the default CMAKE prefix. If you want to customize this location type the following command during the build steps when invoking cmake

cmake -DCMAKE_INSTALL_PREFIX:PATH=/path/to/install/prefix path/to/CMakeLists.txt

dotherside's People

Contributors

arnetheduck avatar axojhf avatar bamarc avatar bryant1410 avatar cireu avatar drug007 avatar dunkyp avatar filcuc avatar flanfly avatar kassane avatar markus-oberhumer avatar sfietkonstantin avatar shalokshalom avatar zxey avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.