I'm searching for a way to automatically generate the TypesScript client code from a ASP.NET Core Web-Application (Currently using Visual Studio 2017RC and webpack).
Are there any existing tools to generate the TypeScript client either in the build pipeline from visual studio or with webpack? I tried to use swagger middleware and then generate to client from the swagger URL, but I'm not sure if the intermediate swagger generation is the right tool for the job. Also the disconnectedness from the build tools is not ideal.
Both NSwag and Swashbuckle/swagger-codegen are awesome.
Typewriter is another awesome option.
So, here is how I would take the decision:
Need to generate TypeScript Models as per the C# models, go for TypeWriter
Need to generate complete client side code with command line that you can add as a build or publish step go for Swagger Code Gen
Need to play with the generated Swagger Spec or Generated Code to add your customizations - go for NSwag
Need to show Client inline code snippets in Swagger UI, use SwaggerUI-snippets
You can add Swashbuckle to your ASP.NET Core webapp and then generate Swagger/OpenAPI spec.
With the Swagger/OpenAPI spec, you can then use Swagger Codegen to generate not only TypeScript API clients (Node, Angular, Angular2, Fetch), but also API clients in C#, Java, JS, Swift, etc as well as API documentation.
The easiest way to try Swagger Codegen is to use https://editor.swagger.io by importing your spec and then select the target API client/server you want to generate. (https://editor.swagger.io leverages https://generator.swagger.io to generate code and generator.swagger.io is powered by Swagger Codegen)
Swagger Codegen can also generate server stubs in C# Nancyfx or ASP.NET core so you may consider following the contract-first approach by writing the spec using https://editor.swagger.io and then generating both API clients and server stubs.
UPDATE: On May 2018, about 50 top contributors and template creators of Swagger Codegen decided to fork Swagger Codegen to maintain a community-driven version called OpenAPI Generator. Please refer to the Q&A for more information.
Another option is NSwag which can generate Swagger specs from your ASP.NET (Core) controllers and TypeScript clients from this Swagger spec (for Angular, AngularJS, Fetch, etc.). The integration is very simple and it supports many advanced features (inheritance, named enums, code extensions, etc).
http://NSwag.org
Using the NSwagStudio UI it is very simple to get started and then you can automate everything with NPM package (i.e. running the config file in the cmd line).
I'm one of the authors of the project.
If you need to generate DTOs and API clients, then your options are
NSwag. The most popular tool for the job. But it generates everything in one file that makes it hard to maintain/debug.
Swagger Codegen or its fork with more features OpenAPI Generator. A Java-based option producing separate files, but with limited customisation.
AutoRest. A npm solution for packing up API clients in npm packages.
WebApiClientGen. A solution mentioned by the author below in this thread.
TypeWriter. VS extension, where you can craft your own implementation.
If you need DTOs only, then I'd look towards
Reinforced.Typings
TypeGen
More on these tools in this post - 6+ ways to marry C# with TypeScript.
You can also take a look at autorest.typescript client code generator. It provides good interfaces for all the model definitions, accurately defines readonly properties and enums. It supports a bunch of custom extensions that can be useful to improve the user experience of the generated client. You can take a look at some generated sample clients.
Bonus: The generated typescript client works in node.js and also in the browser.
If your TypeScript clients are with jQuery or Angular 2+, an alternative ASP.NET Web API Client Generators may be more handy, less overhead than swagger toolchain during SDLC.
And it supports .NET Core in addition to .NET Framework and .NET Standard.
Yet another option where you have full control over generated code is NTypewriter, which is basically Typewriter clone, but it uses Scriban syntax for templates.
I would like to work in Java with this Google Apps Admin SDK.
There is no samples (https://developers.google.com/admin-sdk/reports/v1/libraries, link not working), download library is not working, found: https://developers.google.com/resources/api-libraries/download/stable/apps/reporting/reports/v1/java, from https://developers.google.com/admin-sdk/reports/v1/api-lib/java
Is only available using, building, treating JSON?
Thanks
The link on the documentation page is not working, but the team is aware of it and working on fixing the links. In the mean time you can find the download URLs here:
For reports API:
https://developers.google.com/resources/api-libraries/download/admin/reports_v1/java
For directory API:
https://developers.google.com/resources/api-libraries/download/admin/directory_v1/java
I am looking for a clean vanilla example of the play framework with ajax. I would like to build a a dependent dropdown and a chained select. All the tutorials on the web I have found uses php.
The only sample that has ajax makes use of coffee script.
Is there one out there somewhere?
You don't really need a Scala tutorial for that, you can follow the PHP ones.
The difference is that your data (responses) will be returned by Scala routes instead of PHP scripts.
To learn more about AJAX calls in Play just examine a zentasks sample delivered to you together with Play's code. There are samples for both Scala and Java versions and all you have to test them is to go to the folder of selected sample via commandline and run/start it as a common Play's application.
Preview
I am very interested in using CI phonegap and jquery to make mobile apps, So I've been searching the internet trying to find perhaps an example of using codeigniter with jquery mobile and phonegap(for android specifically) because I have alot of questions.
How I would setup the backend of the site for data input/output and when I goto to put it into eclipse to convert it to Android app, do I include the controllers or only the views + jquery?
I've seen and have been trying to learn more about rest services and curl. I understand I will probrarly be using json, does that mean I can put php code in the html files that phonegap will convert?
Please point me in a good direction, have already checked stackoverflow but not much mentioned other then restservices. thanks
This might help
http://net.tutsplus.com/tutorials/php/working-with-restful-services-in-codeigniter-2/
And check out JQtouch+zepto instead of JqueryMobile
I'm looking at making a mobile app using phonegap. However, I would like to use CodeIgniter as well. What has been the community's experience in doing such? I have tried googling it but only seem to find resumes and job wanted ads! I intend to use CI with jquery-mobile. But I was wondering if i could use phonegap with it and package it as a android or iOS mobile app.
I assume you are using CI as your backend to deliver data back and forth between your mobile app built with phonegap + jquery mobile. If that is the case, whether you use CI or any other backend web framework, it should be pretty straight forward. You'll probably want to consider using JSON as your data format to keep data size down.
I would imagine RESTful web services would suit you well. Check out this guide on getting them working in concert with CI: http://net.tutsplus.com/tutorials/php/working-with-restful-services-in-codeigniter-2/
I personally am using a CI + phonegap + xuijs stack now and its pretty straight forward in terms of communication.