Instant REST client from a Swagger specification

I’ve just published warehouseman:meteor-swagger-client

If you can get the Swagger specification of a remote REST API, this package will get you connected and interacting in short order.

I have a lot still to do, but I aiming to meet the highest standards of Meteor package authoring ; eslint, jsDoc, TinyTest and Travis.

Please, check it out and let me know of any short falls.

PS. A major vote of gratitude to “The Meteor Chef” for the very, very helpful article Writing a Package

4 Likes

This is awesome! Can’t wait to use it in my next project.

Please try to break it. :slight_smile:

Thank you @warehouseman! :smiley:

I still need to examine the whole question of webhooks, as supported by Trello (for example)

My near-term goal is to make a Trello API package for Meteor. That’s a stepping stone to developing a Trello compatible API for LibreBoard documented with Swagger and based on Swagger’s client-side and server-side code generators.

Just to get to where I am now, I ended up having to develop a screen scraper to make a Swagger spec from Trello’s API pages. In fact, if you copy this link and paste into the Swagger Demo Site you can compare Trello’s docs with a Swagger equivalent.

Hey, I am collaborating on a tool called Ekkli that offers ‘railroad diagram’ visualization of projects. I would like to merge the Ekkli features with the LibreBoard kanban interface. What do you think of combining a Kanban tool with graph-based project visualization?

Libreboard does need to differentiate itself from Trello, and visualization alternatives would certainly help with that. I am not able to help you with it though, I am sorry to say.

Hey @warehouseman, we are having a great difficulty packaging Swagger UI for meteor. Have you worked with Swagger UI?

@brylie

Yes! It was a bit of a pain en el trasero, but I did get it working nicely.

Am I right that you want this as server-side code acting as a client to Trello? I did not look into using it from the client’s side. If that is what you want, I can’t help.

Nor, did I get as far as using it to create a server-side API from a Swagger specification.

I have been working on a tutorial that includes using Swagger UI to demonstrate wrapping asynchronous packages for Meteor, but it needs a few days to be ready for release.

If you want to look at using Swagger UI to access Trello (or any other Swagger specified API), then I need to pick back over what I did in order to find a self-standing example that you can use without all the other stuff.

Can you wait 'til later today ??

Yep, we are available at your convenience. The Swagger UI is important for our project, and we are currently ‘kludging’ interactions with Swagger UI via an iFrame embed. The goal is to be able to call new SwaggerUI() from within a Template.created callback, to render SwaggerUI within a template.

Hi Brylie,

It seems you didn’t notice I said . . .

Am I right that you want this as server-side code acting as a client to Trello? I did not look into using it from the client’s side. If that is what you want, I can’t help.

I doubt if I could contribute much more than you have figured out for yourselves and I am buried under other things I am doing.

Have you evaluated whether or not it would be better to do it from the server? I can probably help with that.

If client-side is the way to go, have you explored how to do it with CORS?

We are specifically working with the Swagger UI project, so that we can provide a user interface to any Swagger file:

Swagger UI is a client-side interface to any Swagger description file. It has API sandboxing capabilities and documentation browsing.

Brylie,

Are you replying to me, or just explaining in general terms to anyone else who might be interested in this?

If you are replying to me, I’m sorry, but I don’t see how your reply answers my questions.

The reason I am asking you specifically about the client side Swagger UI, is that we are using it to interact with remote APIs in a Meteor project for API management (not the Libreboard project).

We have not considered how a server-side solution would work, and may have misunderstood your responses indicating you were working with Swagger UI:

I respect that you have other priorities, and that Swagger UI may not be relevant to your work.

Thank you for your work on the Meteor-Swagger Client, this is a really useful project :smile:

@brylie

I thought you were not understanding me. Now I realize I was not understanding how I was misleading you. :pensive:

My package and the tutorial are based on Swagger JS. I did nothing with Swagger UI.

Now that I reread what you have said, I realize I kept thinking Swagger JS, whenever you wrote Swagger UI. Sorry about that.

This package helps with consuming a swagger.io APi right? Do you have experiencing building a RESTful API in Meteor? I need to build one, so starting to look around for resources.

Cheers,
Max

Would you describe in more detail what you’d like to create?

The point of synchronous api calls is that you’d expect them to run in fibers, and thus console.log(swagger.call) wont break?

btw meteor-platform has deprecated.

Apollo killed my interest in Swagger.