Mar 25, 2009

Intro to Building Desktop-Style UIs: JavaScript on Grails

JavaScript is a nice fit on the Grails platform. This demo/presentation provides a side by side comparison of Ext JS and GrailsUI approaches to building feature rich web applications on Grails. Feel free to look at the presentation slides, as well as browse through and run the demo application code.

Demo Application Code
You can find basic setup steps in the README files within each Grails project. The application overview can be found in the presentation slides.

Presentation Slides
Demo App Code

Abstract
The demand for increased interactivity with today’s web applications has resulted in a need to bring the familiar UI features of the desktop to the Web. With the availability of mature 3rd party JavaScript libraries, AJAX technology (DOM, CSS, JavaScript) provides a feasible way to fill this need.

The presenter will walk through building rich web apps using Yahoo! UI (YUI) and Ext JS JavaScript libraries on the Grails platform. YUI offers a rich set of utilities and controls to build interactive applications. Ext JS offers a rich set of pre-configured components, and an extensible Component Model to build desktop-style applications “out of the box” quickly.

Using a sample application, the presenter will demonstrate ways of implementing basic and advanced features using these libraries. From sprinkling simple, effective interactive controls into your web application to building feature rich desktop-style UIs, the capabilities and shortcomings of these libraries will be discussed.

About the Author

Torey Lomenda profile.

Torey Lomenda

VP - Solution Delivery

Torey has over 26 years of software development experience.  As VP of Solution Delivery he blends his skills as a solution architect and pragmatic hands-on technologist to deliver working software solutions. He enjoys collaborating with clients and team members to develop enterprise software systems that provide right-fit solutions for the business.

 

As an architect he has expertise working with key stakeholders to drive common understanding leading to structured solutions that meet business, technical, and operational objectives. He follows a practical approach to modeling systems, applications, components, data and the flows between them to frame solutions that are feasible to implement.

 

As a technologist he has a solid foundation in web and mobile, cloud native APIs, and enabling modern platforms with the help of AWS and Kafka technologies. He has led the development of many mission-critical, end-to-end applications using a diverse set of technologies and supports a pragmatic delivery approach leveraging agile methodologies

 

Expertise: iOS and Android development, Web technologies (HTML, CSS, JavaScript, Ionic/Angular, Vue.js), APIs and enterprise applications (Spring Boot, Kotlin, Node.js, SQL, NoSQL).

 

Practical Experience: Cloud infrastructure (AWS, Google) and container orchestration (Docker, Rancher, Kubernetes), messaging (RabbitMQ) and data streaming (Kafka)

 

Interests: Micro-services architecture, cloud-based platforms and services, native & hybrid mobile development

Leave a Reply

Your email address will not be published.

Related Blog Posts
Natively Compiled Java on Google App Engine
Google App Engine is a platform-as-a-service product that is marketed as a way to get your applications into the cloud without necessarily knowing all of the infrastructure bits and pieces to do so. Google App […]
Building Better Data Visualization Experiences: Part 2 of 2
If you don't have a Ph.D. in data science, the raw data might be difficult to comprehend. This is where data visualization comes in.
Unleashing Feature Flags onto Kafka Consumers
Feature flags are a tool to strategically enable or disable functionality at runtime. They are often used to drive different user experiences but can also be useful in real-time data systems. In this post, we’ll […]
A security model for developers
Software security is more important than ever, but developing secure applications is more confusing than ever. TLS, mTLS, RBAC, SAML, OAUTH, OWASP, GDPR, SASL, RSA, JWT, cookie, attack vector, DDoS, firewall, VPN, security groups, exploit, […]