Wakanda Project
Full Open Source JavaScript platform
 with Business Oriented DataStore
Wakanda




“The effort of mapping to a relational database
is around a third of programming effort - a cost
that continues during maintenance”
                                   Martin Fowler
              Author, speaker, and consultant on the design of enterprise software
End-to-End JavaScript Platform




             Wakanda Server                               Browsers
                                                 REST
             Server-side JavaScript                       Wakanda Ajax
                                              JSON-RPC     Framework
        Business Oriented Datastore




                                      Wakanda Studio
        DataStore Model Designer         Code Editor     GUI Designer


                                        SSJS Debugger


[Date and local infos]
Wakanda
                User friendly APIs



• What ?
 – HTTP and SSJS native APIs
 – No SQL generation


• How ?
 – Data Classes & Extended Classes
 – References and indexes
Wakanda
                        Design your Model


                company                    city

Employee                    Company               City
firstName     string       name      string       zip
lastName      string       webSite   string       name
dateOfBirth   Date         ...       ...          country
...           ...          city      City
company       Company      town      city.name
Wakanda
                        Design your Model


                company                    city

Employee                    Company               City
firstName     string       name      string       zip
lastName      string       webSite   string       name
dateOfBirth   Date         ...       ...          country
...           ...          city      City
company       Company      town      city.name



 ds.Employee.find("lastName = Doe").company.town
Wakanda




Demos
Wakanda
         Running Fast



•   Datastore Engine
•   EntitySet caching
•   Lazy loading
•   Optimistic lock
•   Image meta data indexing
•   Fulltext search
•   Custom Types
Wakanda
            Open Server-Side JavaScript



• Client-side W3C / HTML5 APIs on the server:
 –   sessionStorage
 –   XMLHttpRequest
 –   Blob
 –   Workers, SharedWorkers, SystemWorkers
 –   Console, ...
• CommonJS Modules
Wakanda

‣ Wakanda Server


‣ Wakanda Studio


‣ Browsers
   • WAF Widgets: HTML5 / CSS3

                9                11             5                4


   • Other versions can use WAF DataProvider/DataSource (code your own widgets)
Wakanda
                          Roadmap



• Scalabilité (replication / synchronization)
• More Widgets
    + Better Interaction with existing Frameworks
•   Users & Groups management
•   Remote Debugging
•   Data Browser, Data Admin, Server Admin
•   External Database Connectors
Wakanda
                       Contribute


• Coming soon: github repositories for:
 –   modules
 –   services modules
 –   widgets
 –   project templates
 –   studio JavaScript plugins
 –   Mixed tools (applescripts, batchs, drivers for other
     languages, anything interacting with Wakanda...)
Wakanda
                Public Access Tomorrow
                        Now !!!



                wakanda.org
                  @wakandasoft

• Alexandre Morgaut & Thibaud Arguillère
  – @amorgaut
  – @ThibArg
Wakanda
                Public Access Tomorrow
                        Now !!!




                We are Hiring !!!

• Alexandre Morgaut & Thibaud Arguillère
  – @amorgaut
  – @ThibArg

ParisJS meetup 8 - june 2011

  • 1.
    Wakanda Project Full OpenSource JavaScript platform with Business Oriented DataStore
  • 2.
    Wakanda “The effort ofmapping to a relational database is around a third of programming effort - a cost that continues during maintenance” Martin Fowler Author, speaker, and consultant on the design of enterprise software
  • 3.
    End-to-End JavaScript Platform Wakanda Server Browsers REST Server-side JavaScript Wakanda Ajax JSON-RPC Framework Business Oriented Datastore Wakanda Studio DataStore Model Designer Code Editor GUI Designer SSJS Debugger [Date and local infos]
  • 4.
    Wakanda User friendly APIs • What ? – HTTP and SSJS native APIs – No SQL generation • How ? – Data Classes & Extended Classes – References and indexes
  • 5.
    Wakanda Design your Model company city Employee Company City firstName string name string zip lastName string webSite string name dateOfBirth Date ... ... country ... ... city City company Company town city.name
  • 6.
    Wakanda Design your Model company city Employee Company City firstName string name string zip lastName string webSite string name dateOfBirth Date ... ... country ... ... city City company Company town city.name ds.Employee.find("lastName = Doe").company.town
  • 7.
  • 8.
    Wakanda Running Fast • Datastore Engine • EntitySet caching • Lazy loading • Optimistic lock • Image meta data indexing • Fulltext search • Custom Types
  • 9.
    Wakanda Open Server-Side JavaScript • Client-side W3C / HTML5 APIs on the server: – sessionStorage – XMLHttpRequest – Blob – Workers, SharedWorkers, SystemWorkers – Console, ... • CommonJS Modules
  • 10.
    Wakanda ‣ Wakanda Server ‣Wakanda Studio ‣ Browsers • WAF Widgets: HTML5 / CSS3 9 11 5 4 • Other versions can use WAF DataProvider/DataSource (code your own widgets)
  • 11.
    Wakanda Roadmap • Scalabilité (replication / synchronization) • More Widgets + Better Interaction with existing Frameworks • Users & Groups management • Remote Debugging • Data Browser, Data Admin, Server Admin • External Database Connectors
  • 12.
    Wakanda Contribute • Coming soon: github repositories for: – modules – services modules – widgets – project templates – studio JavaScript plugins – Mixed tools (applescripts, batchs, drivers for other languages, anything interacting with Wakanda...)
  • 13.
    Wakanda Public Access Tomorrow Now !!! wakanda.org @wakandasoft • Alexandre Morgaut & Thibaud Arguillère – @amorgaut – @ThibArg
  • 14.
    Wakanda Public Access Tomorrow Now !!! We are Hiring !!! • Alexandre Morgaut & Thibaud Arguillère – @amorgaut – @ThibArg

Editor's Notes