Skip to content

Latest commit

 

History

History
128 lines (87 loc) · 7.36 KB

readme.md

File metadata and controls

128 lines (87 loc) · 7.36 KB

Drinkle

Comprehensive recipe-development Java toolkit that streamlines the beverage development process under one unified, visually stunning, collaboration-oriented platform.

JavaFX GitHub

drinkle screenshot

Table of contents

Description

Drinkle is comprehensive recipe-development toolkit that streamlines the beverage development process, integrating each and every development procedure, from the ingredient design to the BOM generation, under one unified, visually stunning, collaboration-oriented platform. Since recipe development plays an essential role in brand identity the main application’s target are small, mediumsized companies that, within the same software, with a centralized approach, can easily manage their employees and recipes, granting custom permissions and assigning ad-hoc roles per recipe. With businesses in mind, bill of materials, recipe guidelines and menus can also be, with ease of use, exported within the same platform. In view of the fact that creating, recording and sharing recipes, at the time of this paper, represents a tedious process due to a lack of standardized norms and tools in the prosumer market sector, the software integrates a version for privates with limited functionalities that allows to visually design and share cocktail recipes in a structured easy-to-read manner.

Presentation and Demo

Please refer to the reference presentation: here

Watch the demo

Designed for large teams, sized for everyone

Streamlines the beverage development process, integrating each and every development procedure, from the ingredient design to the BOM generation, under one unified, visually stunning, collaboration-oriented platform.

drinkle screenshot - Designed for large teams, sized for everyone

Features

Borderless custom designed window | Handcrafted UI for a better UX

In order to provide a more natural user-experience, a custom card-based borderless window has been adopted with built-in custom controls and shadows. Each and every graphics and illustration has been handcrafted for the best results.

drinkle screenshot - Handcrafted UI for a better UX

Data persistency: Hibernate ORM, DAO layer, 1:1 table mapping

Due to the intrinsic data-driven nature of the application has been decided to adopt the Hibernate ORM along with a thin generic type-safe DAO Layer allowing to have a 1:1 table-object mapping with auto commit over data-persistance operations.

drinkle screenshot - Hibernate ORM, DAO layer, 1:1 table mapping

Speed and perception of speed: Asynchronous Queries

In order to provide a more modern, smooth and human user-experience a means of parallelism has been required to be implemented, running each database query asynchronously in a non-blocking fashion without blocking or freezing the UI on top of the JPAs.

drinkle screenshot - Speed and perception of speed

A better project structuring approach: Folder mirroring

As being the main goal maximizing work throughput and reducing conflicts and refactorings, during the design phase has been adopted a folder mirroring strategy along with all the common practices regarding Java, JavaFX, MVC and MySQL.

drinkle screenshot - Folder mirroring

A more human experience: animations and micro-interactions

Following the research of a more natural and effective user-experience the application has been crafted with meaningful animations, transitions and micro-interactions.

drinkle screenshot - micro-interactions

Encryption and recovery code generator: MD5, SHA, Salt

All the passwords and sensitive information are encrypted to ensure user’s privacy and data safety. MD5 and SHA (SHA-2 with 32-bit words or 64-bit words) are both supported and interchangeable and both supports supplementary Salt.

The Recovery code is also encrypted and generated based upon a user-defined dictionary that defines its code pattern.

drinkle screenshot - recovery code

ViewLoader: A better view and resource management

With the objective to fulfill the need for a better and more centralized way to manage views and their resources along with the goal to implement a SSOT architecture a custom ViewLoader has been implemented with the task to manages views, resources and their loading and injection process.

drinkle screenshot - ssot TLS/SSL Support

The application and moreover the Data Access Layer has also been designed to support the IETF Standard TLS from day zero, providing a secure end-to-end encrypted connection between the database and the clients.

Views

drinkle views

License

MIT