Wakanda: new javascript app development framework
Hello everybody,
During this year I’ve been working at Wakanda, an ambitious start-up trying to establish his identity in the messy Javascript world.
The product that we are working on is easy to explain from the marketing point of view:
Wakanda is an open-source platform that allows you to quickly and easily create applications that can be deployed on Web and mobile. – from Wakanda.io
Ok cool, the definition is sexy enough to catch your interest but developers don’t fall for these marketing lines easily: what does Wakanda intends with “quick” and “easily”? What are the technologies in game?
First I would like to identify the bigger parts of Wakanda as a developer:
- Wakanda Server
It’s a multithreaded HTTP server which includes Server-Side JavaScript (SSJS) APIs exposed in REST. The server is portable and most of its logic is written in Javascript and ready to use with the Wakanda stack without hours wasted in configuration tasks. - Wakanda Database
The database is a shining product itself to me, perfectly paired with the Wakanda Server. It offers a modern NoSQL experience similar to Mongo and CouchDB with the same portability as SQLite. I’m sure that when it comes to benchmarks the giants will always win the challenge, but we all know that reality is not a benchmark.
Having the Database ready to use, portable and well fit with the Server is a good combination that can save time and stress.
I know that you are often forced to use a different db provider for your project… fear not! We have already developed different bridges to abstract your actual database into ours. (MySQL istant Javascript API, gosh!) - Wakanda Studio
In the era of “everybody wants a code editor” we are taking a different tour and we are offering an IDE.
The objective of Wakanda Studio is to provide a quick way to scaffold your project (solution in Wakandish) and features to manage the whole application stack quickly.
RAD (Rapid Application Development) is the philosophy behind Wakanda therefore the Studio tries to simplify the life of the developer who decide to embrace our stack:- We propose a scaffolding with cutting edge technologies: Angular, Ionic, Bower, Gulp. You love React? No problem, flexibility over everything, you can easily change your project scaffolding and adapt it to your needs.- We favor cross-platform development: by default we identify 3 critical parts of any application; the backend, the web and the mobile. All of these 3 parts are included in the initial scaffolding, it’s up to you to use them or not. Whenever you feel like to evolve your application into a different form (example: web to mobile), you have different opportunities to produce common and re-usable code using our suggested configuration.- We can easily manage all the parts of the stack (Server, Database, Project) from the Studio.
It also include a code editor based on codemirror, git integration, deploy solution, mobile build/test/run tools, an application prototyper, a model designer, extensions updatable, a.. ok there is too much stuff. Go check it out yourselves 😛
…and it doesn’t end here: we are constantly working on connectors and extensions of our framework (check out our Github) like the nice Angular-Wakanda Connector.
Personally what I think is that Wakanda is still green on some aspects. We still have many rooms for improvement but the concepts behind the framework are solid:
- Open Source: I think that open source code is not only a guarantee in terms of licence, it’s also the evidence of a open-minded environment, ready to share and challenge its code with the whole world.
- Modularity: We are developing a full application development stack, perfectly integrated with itself, but I know the frustration of being forced to use every part of a product even if you don’t like everything (Microsoft.. coff coff..).
What if I don’t need an IDE like Wakanda Studio for my project? What if I’m just building an offline mobile application and I don’t need Wakanda Server? What if I already have my own Database and I don’t want to mess with our connectors?
No problem, do what you want: we created almost every component to work independently (but in perfect pace when together :P) - What developers love: We are constantly striving to propose the technologies that the Javascript community approve and love. Yesterday we proposed the integration with Angular and Wakanda, today we are proposing Ionic and tomorrow.. it can be React or Aurelia or anything. We are not deft to developers needs and habits.
Especially the latest point is a big plus for me: I already have my hands full trying to staying in touch with all the frameworks that are emerging in this period. I would like to avoid to add another API reference in my head knowing that it will be completely obsolete/deprecated in the next 6 months.
I love to have a connected stack that maintains coherence and stays up-to-date (without forcing me to do their way with everything).
That’s Wakanda, which is far from perfect but on the right track.
When you have a couple of free hours, give it a try! 🙂
Hey! Great content, really informative looking forward to more such content.