Cloud Connected

Thoughts and Ideas from the Gitana Development Team

* Showing search results for tag: javascript

Cloud CMS Web and Mobile Forms

One of the things that Cloud CMS does really well is forms - specifically, web and mobile forms.

If you’ve ever worked with the development of forms before, you know they’re pretty tricky to put together. You typically have back-end code that is responsible for taking a data structure, validating it and writing it to a database. And you also have front-end code which does user-facing data validation that is cosmetically appealing (pretty red boxes) and helpful. You need to think about customizing the front-end controls (using JavaScript typically) to offer a compelling end-user experience while also offering an intuitive layout. Form elements need to interact together such that changes to one part of a form automatically update or validate with other parts of the form.

It gets more interesting as the requirements grow. For example, you may be asked to have your form work across multiple pages. Perhaps there is a need for a wizard with previous, next and submit buttons. Or perhaps there is conditional logic such that certain sections of a form only appear if a user selects something. Or perhaps the next button should take you to a different set of pages depending on your form’s data (such as having to fill out certain income schedules for a tax payment submission).

And across all of that, there is the question of validation and making the user interface intuitive to end users as data changes. End users should be informed of when they are allowed to proceed to the next step in a form and be shown what updates are required or how they can fix things.

All of this is usually very challenging to deliver, particularly since it requires so much front-end and back-end code that needs to be kept in sync. As such, it has been a hard problem to generalize until very recently.

In the past few years, we’ve seen some new innovations that have made this easier.

One of these innovations is JSON schema which provides a descriptive way to structure your content. You can use JSON Schema to express forms, their data attributes and how they should be validated. With JSON Schema, you can singularly describe the constraints and validation logic of your form and then have that validation run on both the client and server side. You just write it once and it applies in both places.

Other technical innovations include modularized JavaScript and JSON document databases. Modularized JavaScript and other improvements to JavaScript (including EcmaScript 5 and the pending EcmaScript 6) allow for flexible development of intelligent controls that run in the browser. This effectively allows the browser to be much more intelligent about it’s rendering and enables it to make late decisions about how to lay out the controls onto the page or bind them into wizards. This process can be driven entirely from configuration (also a JSON document) while still allowing for JS controllers and methods (packaged up into AMD modules).

Using HTML injection to build user interfaces or forms has really grown up in the world. Popular frameworks like Angular.js or Ember.js work this way. Instead of generating HTML on the back-end and passing it over to be shown in the browser, the front-end generates its own HTML using JSON data retrieved from the back-end. This allows for really beautiful user interfaces that are customized on-the-fly, per user and per device.

Cloud CMS builds on all of this to deliver really intuitive and easy web and mobile forms. We provide an open-source, JavaScript-based Cloud Forms engine that runs entirely on JSON Schema. It builds forms for you on-the-fly, using a configuration-driven approach. And it saves your form data right into Cloud CMS so that you can collaborate around it, report on it and leverage it within your business.

Several years ago, we decided to open-source our forms engine under the Apache 2.0 license so that anyone could use it within their projects. No strings attached and no funny stuff. We’re big believers in open-source. It’s not just that we want to give back, but we also believe that the open-source process is the best way to build a fantastic product.

The result was Alpaca Forms. We put a web site up and promoted releases, along with documentation, examples and community forums. The result has been amazing! We’ve watched as Alpaca has been used in all sorts of interesting projects, ranging from education and government to the entertainment and medical worlds. We’re so glad that it has helped people to deliver amazing applications!

And beyond that, we’ve really enjoyed working with the community. Such great people with interesting ideas and lots of feedback. We’ve greatly enjoyed being in touch with such a great community!

Cloud CMS continues to build and offer Cloud CMS Forms as part of its offering. Each Cloud CMS subscription comes with a fully-engaged content management system that naturally works with Alpaca’s web forms. We offer technical support, bug fixes and production-level SLA’s for Alpaca within live applications.

If you’d like to learn more about Cloud CMS forms, visit our web site or Sign up for a Free Trial.

Thanks for being part of our community!

Create Once, Publish Everywhere!

One of the things that our customers love about Cloud CMS is that it lets them create content once and easily publish it to all of their mobile and web applications. It reduces the amount of work required to create fresh and interesting content and saves them time and money in the process.

Our goal is straightforward. We want to provide all of the things that small business owners need on the backend to give their users a seamless experience in creating, editing and publishing content. With Cloud CMS, you don’t have to build this stuff yourself or integrate it. It’s all there, ready to go from the moment you sign up.

We provide a complete collaborative suite of software including applications, forms, desktop integration and workflow. Business users can create content right away. You can define custom content types, lists and pages. And you can invite team members to work alongside you as content is moved from curation to publication.

Content API

Cloud CMS provides the first pure content API for cloud-connected applications. Our API (REST) is delivered over HTTPS and can easily be integrated into your iOS, Android and HTML5 applications.

We provide quick start projects to help you get on your way. We also provide clients for various platforms including Node.js, Android, Java and JavaScript.

Hosted Applications

Cloud CMS provides an web server tier that lets your business deploy hosted applications for dev, test, QA and production. You can run your application infrastructure this way, on the Cloud CMS hosted tier, or you can host on Heroku, Engine Yard and others. This hosting can consist the entire application or custom APIs specific to your apps.

Instant Preview

One of the truly unique and productive features of Cloud CMS is Instant Preview. With Cloud CMS, you can instantly preview any content changes that you’re working on in real-time, so as to see what those changes might look like if there were live. This lets your business users see changes as they might appear on iOS, Android, the web or a responsive mobile application – the same data formatted in many different ways for different devices.

We’re really excited about how Cloud CMS has grown. Over the past 3+ years, we’ve had a chance to dig in and build what our customers have asked for. We think you’ll find it to be a really exciting platform that is incredibly feature rich, low cost, and well-designed.

To learn more about Cloud CMS or request a trial, please visit our web site at http://www.cloudcms.com.

Cloud CMS JavaScript Driver Release 1.0.3 is out!

The Cloud CMS team is pleased to announce the immediate availability of version 1.0.3 of the Cloud CMS JavaScript Driver for jQuery, Dojo, Javascript/HTML5 and Node.js applications.

Download today from http://github.com/gitana/gitana-javascript-driver.

JavaScript Driver for Cloud CMS

The Cloud CMS JavaScript Driver is a JS library that you can drop into your HTML5/JS applications to take advantage of the authoring and delivery APIs of the Cloud CMS server. It makes it easier for developers to utilize the Cloud CMS HTTP/REST APIs by providing native convenience functions via JavaScript.

The Gitana JavaScript Driver is ideal for use within either the browser or server-side JS environments (like Node.js). For a Node.js wrapped module, please check out: http://github.com/gitana/gitana-node-js.

What is Cloud CMS?

Cloud CMS is a cloud platform as a service for managing all of your business content - from formal business content like articles and news items to social content and interaction data coming from your applications. Cloud CMS puts all of your data into an innovative, high performance and scalable repository and gives your business powerful tools for collaboration, branching, merging and working with content with a secure and robust tools.

To learn more about Cloud CMS, please visit: http://www.cloudcms.com

Release Highlights

This release includes a number of highlights, including bug fixes and new features, which are worth mentioning. A few of the more important elements are shown below. For an itemized list of code level changes, please check the commit history.

  • Fix to map .each() iteration with nested property changes
  • Improved support for automatic application stack and data store caching
  • Preference for clientKey syntax (instead of clientId) (so as to be consistent with adjustments to Cloud CMS)
  • Support for application deployments, query and lookup via API
  • Fixes for missing clone() methods for proper type adherence on promise chaining
  • Improved ability to find stacks for contained data store elements
  • Added ability to specify parent and file paths on node creation and lookup
  • Enhancements to ticket based authentication
  • Support for HTML5 local and session based storage of OAuth2 credentials
  • Improved support for non-window (server-side) environments (like Node.js)
  • Better handling of OAuth2 credentials using refresh token
  • Support for Preview URIs (new feature in Cloud CMS)
  • Support for Identity Policies (new feature in Cloud CMS)
  • Support for partial tree loading (new feature in Cloud CMS)
  • Fix for miscalculated Application URIs

We encourage our community to upgrade to this new release of the Cloud CMS JavaScript driver. We encourage everyone to submit issues, pull requests or post questions to our forums at http://www.cloudcms.org.

To learn more about the Cloud CMS JavaScript Driver, please visit our open-source GitHub repository at http://github.com/gitana/gitana-javascript-driver.