# Build an Web App Based on OpenNebula

**URL:** <https://forum.opennebula.io/t/build-an-web-app-based-on-opennebula/7061>\
**Category:** Integration Support\
**Created:** [March 22, 2019, 8:45am UTC](https://forum.opennebula.io/t/build-an-web-app-based-on-opennebula/7061 "2019-03-22T08:45:46Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![saylaan](https://yyz1.discourse-cdn.com/flex031/user_avatar/forum.opennebula.io/saylaan/32/5964_2.png) [@saylaan](https://forum.opennebula.io/u/saylaan)\
**Post date:** [March 22, 2019, 8:45am UTC](https://forum.opennebula.io/t/build-an-web-app-based-on-opennebula/7061/1 "2019-03-22T08:45:46Z")

</div>

HI,

I open this topic. To discuss about the best thing to use to build an web app using the API XML-RPC.

I’m actually finding some trouble with node.js.

Would it be a good idea to go on ruby on rails or django to manage both back and front with the binding of the API XML RPC itself made by opennebula

Thanks for your answer, it will help me a lot in my development.

---

<div class="post-metadata">

**Author:** ![ruben](https://yyz1.discourse-cdn.com/flex031/user_avatar/forum.opennebula.io/ruben/32/19_2.png) [@ruben](https://forum.opennebula.io/u/ruben)\
**Post date:** [March 22, 2019, 8:59am UTC](https://forum.opennebula.io/t/build-an-web-app-based-on-opennebula/7061/2 "2019-03-22T08:59:19Z")

</div>

You can take a look to the Sunstone implementation. It is using a light web framework in Ruby (Sinatra). Maybe you can base your code on that.

The backend code is in here:

- (main server, route) [https://github.com/OpenNebula/one/blob/master/src/sunstone/sunstone-server.rb](https://github.com/OpenNebula/one/blob/master/src/sunstone/sunstone-server.rb)

- Server classes and xml-rpc calls: [https://github.com/OpenNebula/one/tree/master/src/sunstone/models](https://github.com/OpenNebula/one/tree/master/src/sunstone/models)

The classes wraps the ruby XML-RPC binding with JSON documents for convenience.

Good Luck!

---

<div class="post-metadata">

**Author:** ![saylaan](https://yyz1.discourse-cdn.com/flex031/user_avatar/forum.opennebula.io/saylaan/32/5964_2.png) [@saylaan](https://forum.opennebula.io/u/saylaan)\
**Post date:** [March 22, 2019, 11:44am UTC](https://forum.opennebula.io/t/build-an-web-app-based-on-opennebula/7061/3 "2019-03-22T11:44:31Z")

</div>

Actually i already have a back in node.js and a front in vue.js.

I guess i will have to learn first XML-RPC. And use it with my back to understand how it works.

And then use it with the API XML-RPC of Open Nebula. And manage my own binding to trully understand.

If it’s to hard i will go back to the API already made by opennebula for ruby and python.
