{"id":15136978,"url":"https://github.com/disroop/disroopembeddedhipster","last_synced_at":"2025-10-23T12:30:23.827Z","repository":{"id":46683098,"uuid":"309965385","full_name":"disroop/DisroopEmbeddedHipster","owner":"disroop","description":"A showcase  C/C++ embedded project demonstrating CI/CD practices","archived":false,"fork":false,"pushed_at":"2023-03-02T21:34:11.000Z","size":17118,"stargazers_count":12,"open_issues_count":5,"forks_count":0,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-01-30T18:47:45.730Z","etag":null,"topics":["ci-cd","cmake","conan","docker"],"latest_commit_sha":null,"homepage":"https://disroop.github.io/DisroopEmbeddedHipster/","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/disroop.png","metadata":{"files":{"readme":"README.adoc","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,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-11-04T10:10:56.000Z","updated_at":"2024-01-09T19:42:32.000Z","dependencies_parsed_at":"2024-09-21T11:01:49.053Z","dependency_job_id":"fb461972-ca46-43ec-98a4-706439e35eba","html_url":"https://github.com/disroop/DisroopEmbeddedHipster","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/disroop%2FDisroopEmbeddedHipster","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/disroop%2FDisroopEmbeddedHipster/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/disroop%2FDisroopEmbeddedHipster/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/disroop%2FDisroopEmbeddedHipster/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/disroop","download_url":"https://codeload.github.com/disroop/DisroopEmbeddedHipster/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":237821770,"owners_count":19371826,"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":["ci-cd","cmake","conan","docker"],"created_at":"2024-09-26T06:42:26.066Z","updated_at":"2025-10-23T12:30:20.687Z","avatar_url":"https://github.com/disroop.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"= DisroopEmbeddedHipster\n\n:url-ci: https://github.com/disroop/DisroopEmbeddedHipster/actions/workflows/ci.yml\nimage::https://github.com/disroop/DisroopEmbeddedHipster/actions/workflows/ci.yml/badge.svg[Badge,link={url-ci}]\n\nimage:https://bestpractices.coreinfrastructure.org/projects/5035/badge[Badge,link=https://bestpractices.coreinfrastructure.org/projects/5035]\n\n\n:uri-sonar: https://sonarcloud.io/dashboard?id=disroop_DisroopEmbeddedHipster\nimage:https://sonarcloud.io/api/project_badges/measure?project=disroop_DisroopEmbeddedHipster\u0026metric=bugs[Badge,link={uri-sonar}]\nimage:https://sonarcloud.io/api/project_badges/measure?project=disroop_DisroopEmbeddedHipster\u0026metric=code_smells[Badge,link={uri-sonar}]\nimage:https://sonarcloud.io/api/project_badges/measure?project=disroop_DisroopEmbeddedHipster\u0026metric=coverage[Badge,link={uri-sonar}]\nimage:https://sonarcloud.io/api/project_badges/measure?project=disroop_DisroopEmbeddedHipster\u0026metric=duplicated_lines_density[Badge,link={uri-sonar}]\nimage:https://sonarcloud.io/api/project_badges/measure?project=disroop_DisroopEmbeddedHipster\u0026metric=ncloc[Badge,link={uri-sonar}]\nimage:https://sonarcloud.io/api/project_badges/measure?project=disroop_DisroopEmbeddedHipster\u0026metric=sqale_rating[Badge,link={uri-sonar}]\nimage:https://sonarcloud.io/api/project_badges/measure?project=disroop_DisroopEmbeddedHipster\u0026metric=alert_status[Badge,link={uri-sonar}]\nimage:https://sonarcloud.io/api/project_badges/measure?project=disroop_DisroopEmbeddedHipster\u0026metric=reliability_rating[Badge,link={uri-sonar}]\nimage:https://sonarcloud.io/api/project_badges/measure?project=disroop_DisroopEmbeddedHipster\u0026metric=security_rating[Badge,link={uri-sonar}]\nimage:https://sonarcloud.io/api/project_badges/measure?project=disroop_DisroopEmbeddedHipster\u0026metric=sqale_index[Badge,link={uri-sonar}]\nimage:https://sonarcloud.io/api/project_badges/measure?project=disroop_DisroopEmbeddedHipster\u0026metric=vulnerabilities[Badge,link={uri-sonar}]\n\nDisroopEmbeddedHipster is a showcase project which demonstrates how to create modern C/C++ embedded applications with a modular architecture and implementing CI/CD practices.\n\n\n== Get started\n- Install the following tools on your computer:\n\n* https://www.docker.com/products/docker-desktop[Docker-Desktop]\n\n* https://code.visualstudio.com[VsCode]\n\n* https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-containers[VsCode Plugin - Remote Container]\n\n- Clone the repo and open with VsCode.\n\n[source,console]\n----\ngit clone https://github.com/disroop/DisroopEmbeddedHipster.git\ncd ./DisroopEmbeddedHipster\ncode .\n----\n- Start the container with the remote container plugin.\n\nimage::doc/open_run_unit_test_arm.gif[]\n\n== Features\n* Reproducible and traceable builds with a fully automated toolchain\n* Traceability (git history, build history, hashes, ... , timeline in sonar, ...)\n* Build-In Quality\n** Code Analysis\n** Coverage Analysis\n** https://sonarcloud.io/organizations/disroop/projects?search=hipster[Sonar]\n* Build Automation\n** Project CLI with https://www.pyinvoke.org/[invoke]\n** https://github.com/disroop/DisroopEmbeddedHipster/actions[GitHub Actions]\n** https://azure.microsoft.com/de-de/services/devops/pipelines/[Azure-Pipelines -todo]\n** https://www.jenkins.io/[Jenkins -todo]\n* Artifact based software development process\n** source-\u003ebuild-\u003eartifact (bin, reports, ..)\n* Quality Gateways\n* Standardisation of toolchain\n\n// können wir das ins doc.adoc verschieben?\nTo help developers to get immediately feedback there is builtin quality in the IDE. For example linting tools or test coverage view.\n\nimage::doc/builtin_quality.gif[]\n\n== Tools\n* Using https://hub.docker.com/u/disroop[Docker] to manage the toolchain\n* Easy to set up developer environment in 10 seconds.\n* Use https://docs.conan.io/en/latest/[Conan] as package manager\n* Use https://cmake.org/[CMake] in a https://cliutils.gitlab.io/modern-cmake/[Modern CMake] manner\n* Use https://disroop.jfrog.io/[Artifactory] to manage artifacts\n* Modular Architecture\n* Testing: Unittest, Conan Package-Tests, Test on the Hardware\n* Supported testing frameworks: https://github.com/google/googletest[Gtest], https://github.com/catchorg/Catch2[Catch2], http://cpputest.github.io/[Cpputest]\n* Use modern IDEs: https://code.visualstudio.com/[VsCode] and https://www.jetbrains.com/de-de/clion/[Clion]\n* Focusing on https://en.wikipedia.org/wiki/ARM_Cortex-M[ARM Cortex-M]\n\nFor more information read the \u003c\u003cdoc/doc.adoc#,documentation\u003e\u003e\n\nTry our VsCode extension\n\nhttps://marketplace.visualstudio.com/items?itemName=disroop.conan\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdisroop%2Fdisroopembeddedhipster","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdisroop%2Fdisroopembeddedhipster","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdisroop%2Fdisroopembeddedhipster/lists"}