LDC Via: Building a new app

Julian Woodward, Matt White Mark Myers, Ben Poole

www.ldcvia.com What is LDC Via? A migration and data sync utility

Development Migration Support A platform for hosting data

Data Platform A set of that can be used to access your data

www.ldcvia.com A quick demo migration

You have two options for migration:

1. Quick and simple using our online utility 2. Highly configurable using our desktop utility

www.ldcvia.com I’ve migrated my data, now what?

You have three options for accessing your data: 1. Use our pre-built templates for Document Libraries, Discussions, Teamrooms or archived Mail files 2. Use LDC Via Lens to configure a simple application template with no coding required 3. Build your own application using our API

www.ldcvia.com What development platform? The answer is simple: whatever platform you prefer In this session we’re going to show the creation of the same, very simple application, using React, a client side JavaScript library, node.js, a server side JavaScript framework, and , a modern development framework.

www.ldcvia.com What’s the application?

We only have about 10 minutes per language, so it’s going to be a simple person directory.

It will show the list of people in the database and allow the creation and editing of documents that have been migrated from Notes.

www.ldcvia.com React / jQuery

- React is a JavaScript library for building user interfaces developed by Facebook - Open source, so free to use

www.ldcvia.com React / jQuery

- Lightweight and powerful - Only builds the UI - So the “V” in MVC for browser apps - All network interactions (in this demo) are done with jQuery

www.ldcvia.com React / jQuery

The app is made from 2 main files.

The HTML defines a very basic outline and loads JavaScript resources

The JavaScript builds the UI

www.ldcvia.com React / jQuery

- At its simplest we create an object that renders itself within a specified mark-up element - Here, the “HelloMessage” object is rendered into the “container” div

www.ldcvia.com React / jQuery

- This an post that logs the user in to LDC Via - The screen automatically redraws, as React is in charge of the creation of all HTML - (Note xhrFields value)

www.ldcvia.com React / jQuery

Demo

www.ldcvia.com React / jQuery

To see this in action: https://ldcvia.s3.amazonaws.com/ldcvia-react- demo/index.html To get the source code: https://github.com/LDCVia/ldcvia-react-demo

www.ldcvia.com node.js / Express

- node.js is an open-source application run-time - Cross-platform - Uses the Google V8 JavaScript engine - Almost seven years old, sponsored by Joyent - Asynchronous, event-driven

www.ldcvia.com node.js / Express

- Express is a framework for node.js - A collection of http utilities, middleware and APIs - Routing - Extensible - Simple scaffolding, e.g.: $ express hello-world-app

www.ldcvia.com node.js / Express

To get the source code: https://github.com/LDCVia/engage-node-demo

www.ldcvia.com Vaadin

- Java web application framework - Server-side & client-side - Built on top of GWT (client-side) - Can be deployed as servlets or portlets - One of the simplest ways to write a web UI with Java

www.ldcvia.com Vaadin

www.ldcvia.com Java & JSON

- Dozens of frameworks for handling JSON with Java - The simplest is Gson - https://github.com/google/gson - http://www.jsonschema2pojo.org

www.ldcvia.com Java & JSON

www.ldcvia.com Summary

- LDC Via can migrate data from Domino to a secure, scalable, accessible platform - Modern JavaScript libraries such as React can easily work with LDC Via as a back-end

www.ldcvia.com Summary

- Popular server side frameworks such as node.js and Vaadin work equally well - Our extensive API allows you to build whatever application features you need - Security is managed in LDC Via

www.ldcvia.com An offer

If you sign up for a paid account at http://ldcvia.com use the coupon code Engage16 to get 3 months access free.

www.ldcvia.com