{"id":19660036,"url":"https://github.com/secana/cakeapp","last_synced_at":"2025-06-26T20:36:15.697Z","repository":{"id":91050864,"uuid":"89016734","full_name":"secana/CakeApp","owner":"secana","description":".Net Core solution template using the cake build system.","archived":false,"fork":false,"pushed_at":"2020-03-27T11:12:38.000Z","size":90,"stargazers_count":29,"open_issues_count":2,"forks_count":4,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-04-16T03:55:51.267Z","etag":null,"topics":["cake","cake-build","dotnet-cli","dotnet-core","dotnet-template","nuget"],"latest_commit_sha":null,"homepage":null,"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/secana.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":"2017-04-21T19:24:52.000Z","updated_at":"2024-04-03T20:28:33.000Z","dependencies_parsed_at":"2023-03-01T17:00:14.052Z","dependency_job_id":null,"html_url":"https://github.com/secana/CakeApp","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/secana%2FCakeApp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/secana%2FCakeApp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/secana%2FCakeApp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/secana%2FCakeApp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/secana","download_url":"https://codeload.github.com/secana/CakeApp/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251383859,"owners_count":21580955,"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":["cake","cake-build","dotnet-cli","dotnet-core","dotnet-template","nuget"],"created_at":"2024-11-11T15:45:04.066Z","updated_at":"2025-04-28T20:32:05.687Z","avatar_url":"https://github.com/secana.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# CakeApp\n\nA .Net Core solution template using the [Cake](http://cakebuild.net/) build system. It provides an initial console project and a corresponding [XUnit](https://xunit.github.io/) test project. Furthermore it adds cake build scripts for Windows and Linux.\n\n[![NuGet](https://img.shields.io/nuget/v/CakeApp.svg)](https://www.nuget.org/packages/CakeApp/)\n[![NuGet](https://img.shields.io/nuget/dt/CakeApp.svg)](https://www.nuget.org/packages/CakeApp/)\n\n## Template layout\n\nThis template creates the following structure on your disk, where *CakeApp* is replaced by the name of your solution.\n\n```\n|-\u003e CakeApp.sln\n|-\u003e src\n|   |-\u003e CakeApp.Console\n|   |   |-\u003e CakeApp.Console.csproj\n|   |   |-\u003e Program.cs\n|   |   |-\u003e appsettings.json\n|-\u003e test\n|   |-\u003e CakeApp.Console_Test\n|   |   |-\u003e CakeApp.Console_Test.csproj\n|   |   |-\u003e UnitTest1.cs\n|-\u003e .gitignore\n|-\u003e build.cake\n|-\u003e Dockerfile\n|-\u003e Readme.md\n```\n\n## Prerequisite\n\nSince [Cake 0.30.0 ](https://cakebuild.net/blog/2018/08/cake-v0.30.0-released) the script runner is available as a [.Net Core Global Tool](https://docs.microsoft.com/en-us/dotnet/core/tools/global-tools). This make the bootstrap scripts `build.ps1` and `build.sh` obsolete.\n\n* Make sure you have at least the .Net Core SDK version 3.1 installed\n* Install the Cake global tool with:  `dotnet tool install -g Cake.Tool`\n\n## Installation of Template\n\nOn Windows PowerShell or Linux Shell:\n\n```bash\ndotnet new -i CakeApp\n```\n\nTo uninstall the template run:\n\n```bash\ndotnet new -u CakeApp\n```\n\n## Usage\n\nThis section will shortly describe how to use the template.\n\n### Create a new solution\n\nTo create a new solution based on the template use\n\n`dotnet new cake -o [your solution name]`\n\nThis will create a corresponding Visual Studio solution with the structure described above on your disk. You can now proceed to write your code in the given projects or at more projects if you need so.\n\n### Build the solution\n\nTo build the solution the [Cake](http://cakebuild.net/) build system is used. This template comes with a pre-defined Cake build script `build.cake` with some default build targets. Of course feel free to alter the script if it doesn't fit all your needs.\n\nTo run a build on the PowerShell or Bash type: `dotnet cake --target=[target name]`\nor just `dotnet cake` to run the default target `test`.\n\n| Build Target | Description | Depends on |\n| ------------ | ----------- | ---------- |\n| PrepareDirectories | Ensures that all needed directories for the build are available in your solution directory. | - |\n| Clean | Cleans your last Cake build and deletes all build artifacts. | PrepareDirectories |\n| Restore | Restores all NuGet packages in your projects. It will try it up to five times, since sometimes the restore does not work on the first try. | - |\n| Build | Builds your whole solution with the *Release* configuration. | Restore |\n| Test | Runs all Unit test projects in the *test* folder which project names are ending with **Test**. Other projects are ignored. The test results **.trx* files are put into the *testResults* folder. | Clean, Build |\n| Pack | Packages all projects from the *src* folder into corresponding NuGet packages. The packages are placed in the *artifacts* folder. | Clean, Test |\n| Publish | Publishes all projects from *src* to the *artifacts* folder. You can use the published projects to run them every where else. | Clean, Test |\n| Build-Container | Builds a Docker container with the main application and tags the container based on the \\\"Version\\\" tag in the *.csproj file and a given build number (default 0). Futhermore the container gets a \\\"latest\\\" tag. | publish |\n| Push-Container | Pushes the two container tags (version and latest) into a Docker registry which you have to specify with `-dockerRegistry=\"yourregistry\"` | Build-Container |\n| Default | The same as *Test*. If no target is given, this one is used. | Clean, Build |\n\n## Build the project\n\nTo build a usable NuGet package from the template source run:\n`dotnet cake --target=Pack` from a Windows machine. You find the built Nuget package under *artifacts*.\n\n## Release-Notes\n\nRelease notes can be found here: [Release-Notes](Release-Notes.md)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsecana%2Fcakeapp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsecana%2Fcakeapp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsecana%2Fcakeapp/lists"}