All Projects → ignatandrei → Netcoreblockly

ignatandrei / Netcoreblockly

Licence: mit
.NET Core API to Blockly - generate from WebAPI, Swagger, OData, GraphQL =>

Programming Languages

javascript
184084 projects - #8 most used programming language
csharp
926 projects

Projects that are alternatives of or similar to Netcoreblockly

Schemathesis
A modern API testing tool for web applications built with Open API and GraphQL specifications.
Stars: ✭ 768 (+534.71%)
Mutual labels:  graphql, swagger, openapi, hacktoberfest
Nest Angular
NestJS, Angular 6, Server Side Rendering (Angular Universal), GraphQL, JWT (JSON Web Tokens) and Facebook/Twitter/Google Authentication, Mongoose, MongoDB, Webpack, TypeScript
Stars: ✭ 307 (+153.72%)
Mutual labels:  graphql, jwt, jwt-authentication, jwt-auth
Aspnetcore Webapi Course
Professional REST API design with ASP.NET Core 3.1 WebAPI
Stars: ✭ 323 (+166.94%)
Mutual labels:  swagger, webapi, jwt, jwt-authentication
React Login
A client side implementation of authentication using react.js for my blog on medium. This is the second part of my previous blog on how to implement scalable node.js server.
Stars: ✭ 105 (-13.22%)
Mutual labels:  jwt, jwt-authentication, jwt-auth
Nswag
The Swagger/OpenAPI toolchain for .NET, ASP.NET Core and TypeScript.
Stars: ✭ 4,825 (+3887.6%)
Mutual labels:  swagger, openapi, webapi
Swagger Ui
Swagger UI is a collection of HTML, JavaScript, and CSS assets that dynamically generate beautiful documentation from a Swagger-compliant API.
Stars: ✭ 21,279 (+17485.95%)
Mutual labels:  swagger, openapi, hacktoberfest
Vue Crud X
Vue+Express Cookbook & CRUD Component (with Vite and Web Components)
Stars: ✭ 393 (+224.79%)
Mutual labels:  openapi, hacktoberfest, jwt
Simplemall
基于SpringCloud的微服务架构实战案例项目,以一个简单的购物流程为示例,融合spring cloud 相关组件,如spring-cloud-netflix、swagger等
Stars: ✭ 687 (+467.77%)
Mutual labels:  swagger, jwt, jwt-authentication
Angular Springboot Rest Jwt
Springboot, Angular and JWT security - Example Project based on Northwind Order Processing
Stars: ✭ 603 (+398.35%)
Mutual labels:  swagger, openapi, jwt
Webapiclient
An open source project based on the HttpClient. You only need to define the c# interface and modify the related features to invoke the client library of the remote http interface asynchronously.
Stars: ✭ 1,618 (+1237.19%)
Mutual labels:  swagger, openapi, webapi
Openapi Spring Webflux Validator
🌱 A friendly kotlin library to validate API endpoints using an OpenApi 3.0 and Swagger 2.0 specification
Stars: ✭ 67 (-44.63%)
Mutual labels:  swagger, openapi, hacktoberfest
Swagger Combine
Combines multiple Swagger schemas into one dereferenced schema.
Stars: ✭ 102 (-15.7%)
Mutual labels:  swagger, openapi, hacktoberfest
Goa
Design-based APIs and microservices in Go
Stars: ✭ 4,493 (+3613.22%)
Mutual labels:  swagger, hacktoberfest, openapi
Full Stack Fastapi Postgresql
Full stack, modern web application generator. Using FastAPI, PostgreSQL as database, Docker, automatic HTTPS and more.
Stars: ✭ 7,635 (+6209.92%)
Mutual labels:  swagger, openapi, jwt
Jwt
Go JWT signing, verifying and validating
Stars: ✭ 394 (+225.62%)
Mutual labels:  jwt, jwt-authentication, jwt-auth
Go Book Store Api
Go Sample project to understand Mysql CRUD operation with best practises Includes logging, JWT, Swagger and Transactions
Stars: ✭ 18 (-85.12%)
Mutual labels:  swagger, jwt, jwt-authentication
Laravel Api Boilerplate
A Boilerplate Project For Laravel API's (NOT MAINTAINED)
Stars: ✭ 113 (-6.61%)
Mutual labels:  hacktoberfest, jwt-authentication, jwt-auth
Aspnetcore Ddd
Full ASP.NET Core 3.1 LTS application with DDD, CQRS and Event Sourcing
Stars: ✭ 88 (-27.27%)
Mutual labels:  swagger, webapi, jwt
Pode
Pode is a Cross-Platform PowerShell web framework for creating REST APIs, Web Sites, and TCP/SMTP servers
Stars: ✭ 329 (+171.9%)
Mutual labels:  swagger, openapi, hacktoberfest
Loopback Next
LoopBack makes it easy to build modern API applications that require complex integrations.
Stars: ✭ 3,972 (+3182.64%)
Mutual labels:  swagger, openapi, hacktoberfest

NETCore2Blockly

All Contributors

Build Status GitHub license NuGet Generate Thanks Outdated Licenses

What it does

NETCore2Blockly generates Blockly blocks for each of your controller actions.

Demo at https://netcoreblockly.herokuapp.com/ ( play with the links from the bottom)

Demo Video at https://www.youtube.com/watch?v=GptkNWjmCzk

Sample Project is TestBlocklyHtml from this repository

Contributors welcome! - please send email to email or see issues tab.

How to install NETCore2Blockly in a .NET Core 3.1 WebAPI / MVC application in 3 steps + run application

Step 1:

Install https://www.nuget.org/packages/NetCore2Blockly/ by running the following command in the Package Manager Console:

Install-Package NetCore2Blockly

Step 2:

Modify Startup.cs by adding

public void ConfigureServices(IServiceCollection services)
        {
            //last line
            services.AddBlockly();
        }
public void Configure(IApplicationBuilder app, IWebHostEnvironment env){
        //if you plan to use as html, do not forget app.UseStaticFiles
        //last line
        app.UseBlockly(); 
}

Step 3:

To see the UI , please add

public void Configure(IApplicationBuilder app, IWebHostEnvironment env){
       
       app.UseBlocklyUI(); // you can customize (with BlocklyUIOptions argument )header name, start blocks, others... 
       //you can add  storage like local storage or sqlite 
       //app.UseBlocklyLocalStorage();
       //app.UseBlocklySqliteStorage() ; // other nuget package
       app.UseBlockly();
}

Run application

Run the application from VS and browse to /blockly.html

That's all !( 3 steps + run )

Advanced usage remote data

For Remote Swagger ( CORS activated )

app.UseBlocklySwagger("petstore", "https://petstore.swagger.io/v2/swagger.json")

You can see demo at https://netcoreblockly.herokuapp.com/ ,colapse category local function, expand category Swagger.

See link 25 from https://netcoreblockly.herokuapp.com/

For ODATA ( local or remote - CORS activated if remote)

app.UseBlocklyOData("OdataV4", "https://services.odata.org/TripPinRESTierService/");

You can see demo at https://netcoreblockly.herokuapp.com/ ,colapse category local function, expand category OData.

For GraphQL (local or remote - CORS activated if remote)- Work In progress

app.UseBlocklyGraphQL("localGraphql", "/graphql");

You can see demo at https://netcoreblockly.herokuapp.com/ ,colapse category local function, expand category GraphQL.

See link 32,33 from https://netcoreblockly.herokuapp.com/

For authentication - JSON Web Tokens

See links 22 for JWT and 31 for Auth0 from https://netcoreblockly.herokuapp.com/

Also, it works with Active Directory enabled - see Authentication category.

For adding headers to Http requests

See links 22 for JWT from https://netcoreblockly.herokuapp.com/

For exporting data as CSV

See link 2 from https://netcoreblockly.herokuapp.com/

For exporting data as image

See link 1 from https://netcoreblockly.herokuapp.com/

Making a simple CRUD ( create ,read, update , delete ) application

See link 6,7,8,9, from https://netcoreblockly.herokuapp.com/

Adding your blocks

Please see how I add CustomBlocksForUI below

app.UseBlocklyUI(new BlocklyUIOptions()
            {
                StartBlocks = StartBlocksForUI,
                HeaderName = "Demo test for .NET Core WebAPI To Blockly ( demo site with Blockly +  swaggers + odata loaded + graphql)",
                CustomBlocks = CustomBlocksForUI
            });

More information

Download the source code, run the TestBlocklyHtml project ( in the test folder ).

See there

region blockly needed

and

region blockly optional

and follow the code.

All other code is just boilerplate for Swagger, OData,GraphQL that are mandatory for demo'ing the application, not for Blockly2NetCore itself.

Testing

There is a integration testing at \IntegrationTesting that tests the UI. Generates images and verifies " program complete " textbox.

There are 42 tests that you can also click the demo at https://netcoreblockly.herokuapp.com/ ( see links on the bottom of the page)

Contributors ✨

Thanks goes to these wonderful people (emoji key):

If you want to contribute, that is plenty of work to be done -see issues tab .


Cosmin Popescu

💻

Adrian Nasui

📖

Tudor Iliescu

💻

robertszabobv

💻

Noah Andrews

💻

Rene Escalante

💻

This project follows the all-contributors specification. Contributions of any kind welcome!

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].