Monthly Archives

March 2018

Generating REST web services from PostgreSQL tables

By | Uncategorized

We’ve just released another open source project in github, a humble utility we’ve been using to generate and maintain data intensive rest endpoints that have a CRUD behavior on database tables.

It’s implemented in Java, and it generates:

  • Java Beans for tables.
  • JDBC based Data Access Objects to retrieve and execute commands on the PostgreSQL database.
  • Jersey 2.0 endpoint classes for each table.

The goal was to automate the creation of straight forward endpoints, and to separate data structures, and queries affected by changes in the database in base classes meant to be inherited, and updated regularly as the database evolves. So that, every time you make a change in the database, you just run the generation process and it updates all your related code.

All the generation is driven by templates files, with some ugly tokens for dynamically replacing content and at times for required pre processing of conditional logic.

The generation is based on metadata queried from the PostgreSQL database, but it could be extended to support other relational sources.

It generates Java code, but we are thinking about moving to node.js REST endpoint generation, in the near future. Suggestions and contributions in this sense are welcomed.

Check it out, and please do provide feedback!

A slack alternative that runs on a Raspberry Pi

By | Uncategorized

We’ve made available a docker image of our enterprise chat, task manager (and slack alternative) Kezmo. We used a Raspberry Pi 3 as our infrastructure benchmark for a fresh installation ready to support a small team and it works 🙂

So, what’s Kezmo?

Kezmo is an enterprise chat and team collaboration platform that can be customized and integrated to any system in your organization. It’s based on a small set of core concepts, which are: work spaces, conversations, containers, and container items. A workspace is a pocket of context to collaborate around any given subject. It can be a team, a project, an short term initiative, a client, you name it. Members can be invited to workspaces by it’s creator, where they can exchange conversations, documents, notes, tasks which are stored in workspace containers. The underlying design goal was to provide an intelligent way to store and categorize shared content by type,  attempting to overcome chat archeology whenever you need to go back and recall what was the agreement, link, or file shared at any time.

You can try the vanilla version from the cloud, or you can run it on premises. We implement white label versions of Kezmo, with custom content types, forms, and automations to integrate it into domain specific systems, in health, finance, and construction. If this could interest you let us know.

Where can I get it?

You can try the vanilla version from the cloud by signing up here, or your can try it in your own premises with the docker image we’ve recently released. We would really appreciate any feedback on the setup process.