{"id":20333216,"url":"https://github.com/devkeydet/hellofusiondev","last_synced_at":"2025-04-11T21:33:12.743Z","repository":{"id":115817658,"uuid":"533799362","full_name":"devkeydet/HelloFusionDev","owner":"devkeydet","description":null,"archived":false,"fork":false,"pushed_at":"2024-06-13T14:45:28.000Z","size":603,"stargazers_count":13,"open_issues_count":1,"forks_count":3,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-25T17:46:49.633Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"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/devkeydet.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,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-09-07T14:20:56.000Z","updated_at":"2024-12-13T13:43:00.000Z","dependencies_parsed_at":"2024-04-25T14:27:10.614Z","dependency_job_id":"a4106da2-6bd9-4c6d-bc05-806182847998","html_url":"https://github.com/devkeydet/HelloFusionDev","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/devkeydet%2FHelloFusionDev","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devkeydet%2FHelloFusionDev/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devkeydet%2FHelloFusionDev/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devkeydet%2FHelloFusionDev/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/devkeydet","download_url":"https://codeload.github.com/devkeydet/HelloFusionDev/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248483426,"owners_count":21111446,"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-11-14T20:29:51.440Z","updated_at":"2025-04-11T21:33:12.718Z","avatar_url":"https://github.com/devkeydet.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Sample Dataverse Solution showcasing using cdsproj as the driver of fusion development\n\nFusion development is a term often used to describe bringing together low code and code first (aka pro code) technologies together when developing applications. The [Microsoft Power Platform](https://learn.microsoft.com/power-platform/) has both low code and code first extensibility.  You can learn more about code first extensibility using the [Microsoft Power Platform developer documentation](https://learn.microsoft.com/power-platform/developer/).  The mechanism for implementing Application Lifecycle Management (ALM) in Power Platform is called a [Solution](https://learn.microsoft.com/power-platform/alm/solution-concepts-alm). While fusion development is an often overloaded term, the sample Solution in this repo aims to share a Hello World example of fusion development grounded in source control being the source of truth.  The source code was produced using the [Power Platform CLI](https://learn.microsoft.com/power-platform/developer/cli/introduction).  In source control based ALM, the build process is what typically builds the source code into a deployable artifact.  In Power Platform ALM, the Solution is the deployable artifact.  The Power Platform CLI has a number of commands through [pac solution](https://learn.microsoft.com/power-platform/developer/cli/reference/solution) that enable source control based ALM for solutions through the `*.cdsproj` file.  When using a `*.cdsproj` to drive the building of a Solution, you can achieve the \"fusing\" of low code and code first elements of your Solution by simply running `dotnet build`.\n\n## This sample contains the following\n\n* Low code\n  * Canvas app\n  * Model driven app\n  * Dataverse Table\n* Code first\n  * PCF Component written using TypeScript and React\n  * Dataverse plugin written using C#\n  * JavaScript web resource written using TypeScript\n\n## Getting started\n\nTo understand how this sample was created, you can watch this walkthrough.\n\n[![Video Introduction](https://img.youtube.com/vi/oupkW92xXns/0.jpg)](https://www.youtube.com/watch?v=oupkW92xXns)\n\nTo build the Solution, you can do the following.  Since this Solution usings .NET Framework 4.6.2 for the Dataverse plugin assembly, this works on Windows only.\n\n1. Install [Power Platform CLI](https://learn.microsoft.com/power-platform/developer/cli/introduction?tabs=windows#install-microsoft-power-platform-cli) \u0026 [.NET SDK](https://dotnet.microsoft.com/en-us/download).\n1. Clone the repo or download the zip\n\n    ![image of how to clone or download](clone-or-download.png)\n\n1. After acquiring the code\n\n    ```\n    cd HelloFusionDev\n    cd webresource-src\n    npm install\n    cd ..\n    dotnet build\n    ```\n\nIn the `bin/debug` folder, you will have managed and unmanaged versions of the Solution.  The web resource in the Solution will not be minified and will have source maps.  If you run `dotnet build -c release`, the Solutions will have optmized web resources in the `bin/release` folder.\n\nThanks to [@scottdurow](https://twitter.com/scottdurow) for his awesome (free) course [Building JavaScript Web Resources using TypeScript](https://learn.develop1.net/courses/building-javascript-web-resources-using-typescript/dashboard) for the TypeScript inspiration.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevkeydet%2Fhellofusiondev","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdevkeydet%2Fhellofusiondev","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevkeydet%2Fhellofusiondev/lists"}