README.md

Build Status

Whrl Platform

The Whirl Platform is application builder software for database developers that simplifying of creating web applications. It provides WYSIWYG tools for building UI that tightly binds to database data and business logic. Building application didn’t require to write application server or client side logic, all logic can be done database side.

Platform is on production-ready state and used in more than twenty closed source commercial applications.

Demo

You can try Whirl Platform on the our demo server.

Application

Server: Showcase application

Username: whirl-showcase-user

Password: password

Editor

Server: Editor

Username: whirl-admin

Password: password

License

Since the Whirl Platform client side code mostly based on the Sencha GXT library, it’s deriving GPL v3 license.

License text

Developing

First the database to store platform data should be created.

  • PostgreSQL

    For PostgreSQL you should have configured local RDBMS on 5432 port. SQL scripts for creating metadata database are:

    CREATE ROLE whirl WITH LOGIN PASSWORD 'password';
    CREATE DATABASE whirl OWNER whirl;
    GRANT ALL PRIVILEGES ON DATABASE whirl TO whirl;
    -- connect to whirl database as superuser and run next commands
    CREATE SCHEMA whirl AUTHORIZATION whirl;
    
  • MySQL: For MySQL configure it on port 3306.

    CREATE USER whirl IDENTIFIED BY 'password';
    CREATE DATABASE whirl;
    GRANT ALL ON whirl.* TO whirl;
    

To prepare dependencies for running platform in development mode you should build prerequisites:

mvn clean install -Dgwt.skipCompilation=true

Main platform - whirl-app

Server

Command to start backend on Tomcat server is:

cd whirl-app/whirl-app-server
mvn compile war:exploded cargo:run -pl whirl-app-server -am -P jdbc-postgresql,config-postgresql,local-store

Client

We are using GWT for developing frontend side with tbroyer Maven GWT plugin to manage GWT modules.

Command to start frontend in dev mode is:

cd whirl-app/whirl-app-server
mvn gwt:codeserver -pl whirl-app-client -am

After command execution application will be accessible at http://localhost:8090/app. Frontend part will be compiled on demand.

Application editor - whirl-editor

Server

Commands to start:

cd whirl-editor/whirl-editor-server
mvn compile war:exploded cargo:run -pl whirl-editor-server -am -P jdbc-postgresql,config-postgresql,local-store

Client

Commands to start:

cd whirl-editor
mvn gwt:codeserver -pl whirl-editor-client -am

Editor will be accessible at http://localhost:8091/editor/.

Troubleshooting

If you experience the following issue while initializing maven project:

Blocked mirror for repositories: [jboss-central (http://repository.jboss.org/nexus/content/groups/public-jboss, default, releases...

Add following to your maven settings.xml:

<mirrors>
  <mirror>
    <id>imagej-repository-mirror</id>
    <name>ImageJ repository mirror</name>
    <url>https://maven.imagej.net/content/repositories/public</url>
    <mirrorOf>imagej-repository</mirrorOf>
  </mirror>
  <mirror>
    <id>jboss-repository-mirror</id>
    <name>JBoss Public Nexus Repository</name>
    <url>https://repository.jboss.org/nexus/content/groups/public/</url>
    <mirrorOf>jboss-central</mirrorOf>
  </mirror>
</mirrors>

Release preparation

Command to set new version in all pom.xml files is:

mvn versions:set -DnewVersion=X.X.X-SNAPSHOT -DprocessAllModules
Описание

The Whirl Platform is application builder software for database developers that simplifying of creating web applications. It provides WYSIWYG tools for building UI that tightly binds to database data and business logic code. Building application didn't require to write application server or client side logic, all logic can be done database side.

Конвейеры
0 успешных
0 с ошибкой