{"id":13743758,"url":"https://github.com/machinekoder/cpp-qt-live-coding","last_synced_at":"2025-10-11T18:24:02.266Z","repository":{"id":145323787,"uuid":"175964493","full_name":"machinekoder/cpp-qt-live-coding","owner":"machinekoder","description":"Live Coding Environment for C++, Qt and QML","archived":false,"fork":false,"pushed_at":"2023-03-08T22:47:27.000Z","size":430,"stargazers_count":41,"open_issues_count":2,"forks_count":6,"subscribers_count":9,"default_branch":"master","last_synced_at":"2024-11-15T14:35:51.419Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/machinekoder.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2019-03-16T11:39:14.000Z","updated_at":"2024-01-16T07:27:43.000Z","dependencies_parsed_at":"2024-01-15T00:11:56.646Z","dependency_job_id":"dd901bdd-4a10-4003-b889-1b855a44b616","html_url":"https://github.com/machinekoder/cpp-qt-live-coding","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/machinekoder%2Fcpp-qt-live-coding","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/machinekoder%2Fcpp-qt-live-coding/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/machinekoder%2Fcpp-qt-live-coding/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/machinekoder%2Fcpp-qt-live-coding/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/machinekoder","download_url":"https://codeload.github.com/machinekoder/cpp-qt-live-coding/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253174361,"owners_count":21865852,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-03T05:00:56.518Z","updated_at":"2025-10-11T18:23:57.209Z","avatar_url":"https://github.com/machinekoder.png","language":"C++","readme":"# Live Coding Environment for C++, Qt and QML\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://github.com/machinekoder/cpp-qt-live-coding/blob/master/LICENSE)\n[![Code style: WebKit](https://img.shields.io/badge/code%20style-WebKit-blue.svg)](https://webkit.org/code-style-guidelines/)\n\nThis project aims to be the C++ version for Qt/QML live coding.\n\nIn constrast to other live coding environments, this project is a live coding QML module meant to be integrated into your application.\n\nIntegrating QML live coding into your application significantly boosts your HMI developers productivity. Compared to stand-alone solutions, this approach enables integration of C++ QML components without deploying them first.\n\nAdditionally, it enables customization of the live coding environemnt, including pre-loading of resource intensive QML components.\n\n**See also**\n* [My blog post about Qt/QML live coding](http://machinekoder.com/qt-qml-live-coding-for-everyone/)\n* [python-qt-live-coding](https://github.com/machinekoder/python-qt-live-coding): The Python version of this project.\n* [qtquick-qmake-catch-trompeloeil-live](https://github.com/machinekoder/cookiecutter-qtquick-qmake-catch-trompeloeil-live): Template for QMake based projects\n* [qtquick-cmake-catch-trompeloeil-live](https://github.com/machinekoder/cookiecutter-qtquick-cmake-catch-trompeloeil-live) Template for CMake based projects\n* [Lightning Talk from QtDay.it 19](https://youtu.be/jbOPWncKE1I?t=1856)\n\n**Qt/QML Live Coding with C++ Tutorial**\n\n[![Qt/QML Live Coding with C++ Tutorial](http://img.youtube.com/vi/UABm__RZq8g/0.jpg)](http://www.youtube.com/watch?v=UABm__RZq8g)\n\n## Install\n\n### With Qt Creator\n\n* git clone the project repository\n* Open the projects `.pro` file in Qt Creator\n* add a new make install step with Make argument `install`\n* Build\n\n### From the terminal\n\n```bash\ngit clone https://github.com/machinekoder/cpp-qt-live-coding.git\ncd cpp-qt-live-coding\nmkdir build\ncd build\nqmake ..\nmake -j$(nproc)\nmake install\n```\n\n## How to Use\n\nTo use the live coding environment, you need to follow these steps:\n\n1. Create [`live.qml`](./example/live.qml) which is the live coding version of your `main.qml`.\n2. Modify your [`main.cpp`](./example/main.cpp) to add a `-l --live` command line argument.\n3. Disable shadow build and run your application.\n\nTake a look at [example](./example) for an example.\n\n### Cookiecutter project template\n\nThe easiest way to create a new project with live-coding enable is to use the [Cookiecutter template](https://github.com/machinekoder/cookiecutter-qtquick-qmake-catch-trompeloeil-live).\n\n```bash\npip install cookiecutter\ncookiecutter gh:machinekoder/cookiecutter-qtquick-qmake-catch-trompeloeil-live\n```\n","funding_links":[],"categories":["C++"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmachinekoder%2Fcpp-qt-live-coding","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmachinekoder%2Fcpp-qt-live-coding","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmachinekoder%2Fcpp-qt-live-coding/lists"}