What is this?

This is a code generator. It generates HTTP access codes from cURL options.


What is the purpose of this tool?

I made this tool for:

  • creating client code easily.
  • creating test code via HTTP easily.
  • learning programming languages I didn’t know.

Why it doens’t support HTTP2 / SPDY?

I don’t know the programming language that supports HTTP2/SPDY by standard library.

Why cURL?

I was inspired from Google Chrome’s dev tool. In its “Network” tab, you can get curl command line text.

Modern langauges provide REPL(Read-Eval-Print-Loop) environment to test code. I think cURL will be able to be the REPL of RESTful APIs. I hope all API documents will have cURL command samples to describe the API behavior like Riak CS.


Are you RESTful junkie?


Some RESTful APIs are difficult to use/debug. It needs making complex XML or JSON on the client and add complicated header for authentication. But it returns just 400 when there is some errors. Do you want to drive a car with only one alert lamp? You need to know what is happening on your car, like gas is empty, tire’s air pressure is low or the engine is over heated. Fumbling your way out of 400 stresses you and robs your time.

You should use any RPC framework to match impedance between clients and servers like gRPC if you can.

What is the future plan of this tool?

If I need to write some HTTP access code in the language that is not supported now, I will add the code generator for the language.

And I am interested in server side code generation, but it is low priority.