Skip to content

MarinHadzhiev/dirigible

 
 

Eclipse Dirigible™

Build Status Eclipse License Download Dirigible Artifact HUB Maven Central GitHub contributors FOSSA Status CII Best Practices REUSE status

Eclipse Dirigible is a High-Productivity Application Platform as a Service (hpaPaaS). It provides an application server consisting of pre-selected execution engines and built-in development tools as WebIDE. It is suitable for rapid development of business applications by also leveraging the Low Code / No Code techniques.

dirigible logo

Enjoy Programming Like Never Before

From the end user's perspective (developer), Dirigible runs directly in the browser, therefore does not require any downloads or installations.

From the service provider's perspective (PaaS/SaaS), Dirigible packs all required components in a self-contained software bundle that can be deployed in any Java-based web server, such as Tomcat, Jetty, JBoss.

Dirigible supports access to RDBMS via JDBC. Currently supported versions for RDBMS are HANA, MaxDB, Sybase ASE, PostgreSQL, MySQL, H2, and Derby.

Dirigible promotes the In-System Programming development model, where you make dynamic alteration of the live system. To provide the self-contained bundle serving all the needed features for a business application, Dirigible packs various engines such as ActiveMQ, Quartz, Lucene, Flowable, Mylyn, Rhino, V8 and others.

The project started as an internal SAP initiative to address the extension and adoption use-cases related to SOA and Enterprise Services.

Instant Trial

You can try the sandbox instance to have a quick look on the functionality you are interested http://trial.dirigible.io.

Get Started

Download

The "fast-track" - you can download the precompiled binaries produced by the GitHub Actions from http://download.dirigible.io/ and skip the build section.

Nevertheless, we highly recommend building the binaries from source in order to have all experimental features that are not available in the releases.

Build

Prerequisites
Steps
  1. Clone the project repository - master branch or download the latest sources.

In case there is an issue with 'Filename too long in Git for Windows' then add the fllowing git confoguration

git config --system core.longpaths true
  1. Go to the root folder.

  2. Build the project with:

     mvn clean install
    
  • Quick build with tests:

     mvn -T 1C clean install -Dmaven.javadoc.skip=true -Dlicense.skip=true
    
  • If you don't want to trigger license updates:

     mvn clean install -Dlicense.skip=true
    
  • If you have a multi-core system, enable threads:

     mvn -T 1C clean install
    
  • If you don't need to run tests, you can add the following argument:

     mvn clean install -DskipTests
    
  • If you don't need to compile and run tests:

     mvn clean install -Dmaven.test.skip=true -DskipTests
    
  • If you want to do a fast build, with no tests, javadocs and license updates:

     mvn -T 1C clean install -Dmaven.test.skip=true -DskipTests -Dmaven.javadoc.skip=true -Dlicense.skip=true
    

The main groups of modules can be built separately: api, ext, ide, modules, releng, resources and templates:

    cd api
    mvn clean install

The build should pass successfully. The produced ROOT.war files are in releng/<artifact-name>/target/ and are ready to be deployed. There are separate deployable artifacts (WAR files) depending on the usage type. If you are running it locally, then you need releng/desktop-all/target/ROOT.war. There is also an executable JAR file under the releng/<artifact-name>/target folder with a name like ROOT.jar.

Run

Standalone

Prerequisites

The Java Web Application Archive (WAR) files can be deployed on Apache Tomcat web container. In this case the built-in H2 database is used.

More information about how to deploy on Apache Tomcat can be found here.

macOS:

brew install ttyd

Linux:

Linux support is built-in

More info about ttyd can be found at: ttyd

Steps
  1. Go to Tomcats home directory.
  • If you installed tomcat using brew, you can see the path assigned to CATALINA_HOME by executing:

      catalina home
    
  1. Go to the webapps directory and delete its content.

  2. Copy the ROOT.war file and paste it in webapps.

  3. Go to the conf directory, open tomcat-users.xml and configure the users store:

     <tomcat-users>
             <role rolename="Developer"/>
             <role rolename="Operator"/>
             <role rolename="Everyone"/>
             <user username="dirigible" password="dirigible" roles="Developer,Operator,Everyone"/>
     </tomcat-users>
    
  4. Run Tomcat.

  • If you have installed tomcat using brew:

      catalina run
    
  • If you downloaded Tomcat manually, return to the base directory and run:

      sh bin/catalina.sh run
    
  1. Open a web browser and go to:

     http://localhost:8080
    
  2. Login with dirigible/dirigible.

Docker

Prerequisites
Steps
  1. Get the container
  • Pull the official image from Docker Hub:

      docker pull dirigiblelabs/dirigible-trial
    
  • Build it locally

      cd releng
      docker build -t dirigible-trail -f Dockerfile-tomcat .
    
  1. Start the container

     docker run -p 8080:8080 -p 8081:8081 dirigiblelabs/dirigible-trial <&- &
    
  2. Open a web browser and go to:

     http://localhost:8080/
    
  3. Optionally you can enhance and customize the Dockerfile from here

Additional Information

License

This project is copyrighted by SAP SE and is available under the Eclipse Public License v 1.0. See LICENSE.txt and NOTICE.txt for further details.

FOSSA Status

Contributors

If you like to contribute to Dirigible, please read the Contributor's guide.

References

About

Eclipse Dirigible™ Project

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 67.1%
  • Java 20.9%
  • HTML 8.9%
  • CSS 3.0%
  • Rust 0.1%
  • Dockerfile 0.0%