{"id":23170983,"url":"https://github.com/ignatandrei/netcoreblockly","last_synced_at":"2025-04-13T06:28:41.118Z","repository":{"id":37370384,"uuid":"255564502","full_name":"ignatandrei/NETCoreBlockly","owner":"ignatandrei","description":".NET Core API to Blockly - generate from WebAPI, Swagger, OData, GraphQL =\u003e https://visualapi.azurewebsites.net/","archived":false,"fork":false,"pushed_at":"2024-12-06T06:15:16.000Z","size":33911,"stargazers_count":178,"open_issues_count":42,"forks_count":38,"subscribers_count":14,"default_branch":"master","last_synced_at":"2025-04-04T05:07:42.696Z","etag":null,"topics":["blockly","csharp","graphql","hacktoberfest","javascript","jwt","jwt-auth","jwt-authentication","netcore3","odata","openapi","swagger","visualprogramming","webapi"],"latest_commit_sha":null,"homepage":"https://ignatandrei.github.io/BlocklyAutomation/","language":"HTML","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/ignatandrei.png","metadata":{"files":{"readme":"README.md","changelog":"changelog.md","contributing":null,"funding":".github/FUNDING.yml","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},"funding":{"github":["ignatandrei"],"ko_fi":"ignatandrei"}},"created_at":"2020-04-14T09:21:36.000Z","updated_at":"2025-02-18T12:43:03.000Z","dependencies_parsed_at":"2024-05-05T14:31:50.232Z","dependency_job_id":null,"html_url":"https://github.com/ignatandrei/NETCoreBlockly","commit_stats":null,"previous_names":[],"tags_count":51,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ignatandrei%2FNETCoreBlockly","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ignatandrei%2FNETCoreBlockly/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ignatandrei%2FNETCoreBlockly/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ignatandrei%2FNETCoreBlockly/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ignatandrei","download_url":"https://codeload.github.com/ignatandrei/NETCoreBlockly/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248674158,"owners_count":21143656,"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":["blockly","csharp","graphql","hacktoberfest","javascript","jwt","jwt-auth","jwt-authentication","netcore3","odata","openapi","swagger","visualprogramming","webapi"],"created_at":"2024-12-18T04:15:47.917Z","updated_at":"2025-04-13T06:28:41.092Z","avatar_url":"https://github.com/ignatandrei.png","language":"HTML","readme":"# NETCore2Blockly\n\n\u003c!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section --\u003e\n[![All Contributors](https://img.shields.io/badge/all_contributors-6-orange.svg?style=flat-square)](#contributors-)\n\u003c!-- ALL-CONTRIBUTORS-BADGE:END --\u003e\n[![Build Status](https://dev.azure.com/ignatandrei0674/NETCoreBlockly/_apis/build/status/ignatandrei.NETCoreBlockly?branchName=master)](https://dev.azure.com/ignatandrei0674/NETCoreBlockly/_build?definitionId=9)\n[![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/ignatandrei/NetCore2Blockly/blob/master/LICENSE)\n[![NuGet](https://img.shields.io/nuget/v/NetCore2Blockly.svg)](https://www.nuget.org/packages/NetCore2Blockly)\n![Generate Thanks Outdated Licenses](https://github.com/ignatandrei/NETCoreBlockly/workflows/.NET%20Core/badge.svg)\n\n# What it does\nNETCore2Blockly generates [Blockly](https://developers.google.com/blockly) blocks for each of your controller actions. \n\n*Demo* at https://ignatandrei.github.io/BlocklyAutomation/ \n\n*Demo* Video at https://www.youtube.com/watch?v=GptkNWjmCzk\n\nSample Project is TestBlocklyHtml from this repository\n\n*Contributors welcome!* - please send email to \u003cimg src='email.png' height='10px' title = \"please write email from image\" alt='email'\u003e\u003c/img\u003e or see issues tab.\n\n\n# How to install NETCore2Blockly in a .NET Core 6  WebAPI / MVC application in 2 steps + run application\n\n## Step 1:\nInstall https://www.nuget.org/packages/NetCore2Blockly/ by running the following command in the Package Manager Console:\n\u003e Install-Package NetCore2Blockly\n\n## Step 2:\n```csharp\n//after app.MapControllers();\napp.UseBlocklyUI(app.Environment);\napp.UseBlocklyAutomation();\n\n```\n\n\n## Run application\n\nRun the application from VS and browse to  /BlocklyAutomation/ or /BlocklyAutomation/index.html\n\n## That's all !( 2 steps + run )\n\n\n# How to install NETCore2Blockly in a .NET Core 5  WebAPI / MVC application in 2 steps + run application\n\n## Step 1:\n\nInstall https://www.nuget.org/packages/NetCore2Blockly/ by running the following command in the Package Manager Console:\n\u003e Install-Package NetCore2Blockly\n\n\n## Step 2:\nModify Startup.cs by adding\n```csharp\npublic void ConfigureServices(IServiceCollection services)\n{\n  //somewhere generate the swagger\n  services.AddSwaggerGen(c =\u003e\n  {\n      c.SwaggerDoc(\"v1\", new OpenApiInfo { Title = \"My API\", Version = \"v1\" });\n  });\n\n\n}\n\npublic void Configure(IApplicationBuilder app, IWebHostEnvironment env)\n{\n  //last line\n  app.UseDefaultFiles();\n  app.UseStaticFiles();\n  app.UseSwagger();\n  app.UseBlocklyUI(env);\n//code\n  app.UseEndpoints(endpoints =\u003e\n  {\n      endpoints.MapControllers();\n      endpoints.UseBlocklyAutomation();\n  });\n}\n```\n\n## Run application\n\nRun the application from VS and browse to  /BlocklyAutomation/ or /BlocklyAutomation/index.html\n\n\n\n\n# How to install NETCore2Blockly in a .NET Core 3.1  WebAPI / MVC application in 2 steps + run application\n\n##  Step 1\nInstall-Package Swashbuckle.AspNetCore -Version 5.6.3\nInstall-Package NetCore2Blockly -Version 3.2022.224.16\n\n## Step 2\n\n```csharp\n app.UseDefaultFiles();\n app.UseStaticFiles();\n app.UseSwagger();\n //code\n app.UseBlocklyUI(env);\napp.UseEndpoints(endpoints =\u003e\n{\n    endpoints.MapControllers();\n    endpoints.UseBlocklyAutomation();\n});\n```\n \n## Run application\n\nRun the application from VS and browse to  /BlocklyAutomation/ or /BlocklyAutomation/index.html\n\n## Migrating from 1 \n \nReplace\n\nusing NetCore2Blockly; =\u003e using NetCore2BlocklyNew;\napp.UseBlocklyUI(); =\u003e   app.UseBlocklyUI(env);\nDelete app.UseBlockly(); =\u003e\nAdd =\u003e endpoints.UseBlocklyAutomation();\n\nNavigate to /blocklyAutomation\n\n# Advanced usage remote data\n\n\n## For Remote Swagger ( CORS activated )\n\nTBC: create BlocklyAutomation/assets/loadAtStartup/swaggers.json \n\n\n## For authentication  - JSON Web Tokens\n \nSee Demos from https://ignatandrei.github.io/BlocklyAutomation/ \n\nAlso, it works with Active Directory enabled - see Authentication category.\n\n## For adding headers to Http requests\n \nSee https://ignatandrei.github.io/BlocklyAutomation/BlocklyAutomation/automation/loadexample/jwt\n\n## For exporting data as CSV\n\nSee https://ignatandrei.github.io/BlocklyAutomation/BlocklyAutomation/automation/loadexample/NetCoreBlockly_SaveCSV\n\n## For exporting data as image\n\nSee https://ignatandrei.github.io/BlocklyAutomation/BlocklyAutomation/automation/loadexample/saveImage\n\n## Making a simple CRUD ( create ,read, update , delete ) application\n\nSee https://ignatandrei.github.io/BlocklyAutomation/BlocklyAutomation/automation/loadexample/NetCoreBlockly_DeleteDepartment\nor search for department in demos\n\n## Adding your blocks\n\nCreate BlocklyAutomation\\assets\\loadAtStartup\\customCategories.txt\n\n# More information\n\nDownload the source code, run the TestNetCorePackage project ( in the test folder ).\n\n\n# Testing\n\n\n# Contributors ✨\n\nThanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):\n\nIf you want to contribute, that is plenty of work to be done -see issues tab .\n\n\u003c!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section --\u003e\n\u003c!-- prettier-ignore-start --\u003e\n\u003c!-- markdownlint-disable --\u003e\n\u003ctable\u003e\n  \u003ctr\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"http://www.chestiiautomate.ro/\"\u003e\u003cimg src=\"https://avatars1.githubusercontent.com/u/4983185?v=4\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eCosmin Popescu\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/ignatandrei/NETCoreBlockly/commits?author=cosminpopescu14\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/adriannasui\"\u003e\u003cimg src=\"https://avatars3.githubusercontent.com/u/8627433?v=4\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eAdrian Nasui\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/ignatandrei/NETCoreBlockly/commits?author=adriannasui\" title=\"Documentation\"\u003e📖\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/tudorgbiliescu\"\u003e\u003cimg src=\"https://avatars3.githubusercontent.com/u/8693567?v=4\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eTudor Iliescu\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/ignatandrei/NETCoreBlockly/commits?author=tudorgbiliescu\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/robertszabobv\"\u003e\u003cimg src=\"https://avatars0.githubusercontent.com/u/9404144?v=4\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003erobertszabobv\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/ignatandrei/NETCoreBlockly/commits?author=robertszabobv\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/NoahAndrews\"\u003e\u003cimg src=\"https://avatars1.githubusercontent.com/u/10224994?v=4\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eNoah Andrews\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/ignatandrei/NETCoreBlockly/commits?author=NoahAndrews\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/es-rene99\"\u003e\u003cimg src=\"https://avatars3.githubusercontent.com/u/43294836?v=4\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eRene Escalante\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/ignatandrei/NETCoreBlockly/commits?author=es-rene99\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n\u003c!-- markdownlint-enable --\u003e\n\u003c!-- prettier-ignore-end --\u003e\n\u003c!-- ALL-CONTRIBUTORS-LIST:END --\u003e\n\nThis project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!\n\n","funding_links":["https://github.com/sponsors/ignatandrei","https://ko-fi.com/ignatandrei"],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fignatandrei%2Fnetcoreblockly","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fignatandrei%2Fnetcoreblockly","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fignatandrei%2Fnetcoreblockly/lists"}