Git Product home page Git Product logo

scenebuilder's Introduction

Gluon Scene Builder

Gluon Scene Builder is a drag and drop UI designer tool allowing rapid desktop and mobile app development. Scene Builder separates design from logic, allowing team members to quickly and easily focus on their specific aspect of application development.

Scene Builder works with the JavaFX ecosystem โ€“ official controls, community projects, and Gluon offerings including Gluon Mobile, Gluon Desktop, and Gluon CloudLink.

Scene Builder is open source, and it is freely licensed under the BSD license. Gluon can provide custom consultancy, training, and open source commercial support.

Getting started

The best way to get started with Gluon Scene Builder is by downloading and installing on your developer machine the latest Scene Builder release.

See the documentation about the new features recently included.

For community support, go to StackOverflow.

Issues and Contributions

Issues can be reported to the Issue tracker

Contributions can be submitted via Pull requests, providing you have signed the Gluon Individual Contributor License Agreement (CLA). Please check the contribution guide for more details.

Building Scene Builder

Requisites

Gluon Scene Builder is frequently released, and this is only required in case you want to fork and build your local version of Scene Builder.

These are the requisites:

  • A recent version of JDK 11 or later for building 'master' branch
  • A recent version of JDK 8 for building '8u-dev' branch

How to build Scene Builder

Scene Builder makes use of the Maven Wrapper to build and run the project. So there is no need to install Maven on the developers machine. To utilize Maven Wrapper, instead of calling mvn, one can run ./mvnw on Linux or macOS or mvnw on Windows instead.

To build the Scene Builder services, on the project's root, run:

mvn clean package

Alternatively, utilizing the Maven Wrapper, one can run:

./mvnw clean package

It will create a partial shadow cross-platform jar under app/target/lib/scenebuilder-$version.jar, that doesn't include the JavaFX dependencies.

How to run Scene Builder

Before starting the app, all dependencies must be installed locally. This is achieved by:

mvn install

Then Scene Builder can be started with Maven:

mvn javafx:run -f app

Alternatively, you can run the partial shadow jar, providing you have downloaded the JavaFX SDK from here:

java 
--module-path /path/to/javafx-sdk-$javafxVersion/lib \
--add-modules javafx.web,javafx.fxml,javafx.swing,javafx.media \
--add-opens=javafx.fxml/javafx.fxml=ALL-UNNAMED \
-cp app/target/lib/scenebuilder-$version.jar \
com.oracle.javafx.scenebuilder.app.SceneBuilderApp

Scene Builder Kit

To build and install the Scene Builder Kit in your local repository, run:

mvn clean install -f kit

The custom controls of the Scene Builder kit can be used in your project. You can add it as a regular dependency to the build of your app:

<dependency>
  <groupId>com.gluonhq.scenebuilder</groupId>
  <artifactId>kit</artifactId>
  <version>$version</version>
</dependency>

Code Style

To ensure that new code formatting matches the requirements for Pull Requests, the Maven Checkstyle plugin can be used to create a report listing possibly coding style violations.

Contributors can check for code-style violations in their code by running the Checkstyle Maven goal. The checkstyle configuration is currently in a very early stage and only checks for empty blocks, extra white space, padding and empty lines.

To run the plugin:

mvn checkstyle:checkstyle

There will be a report for each sub-project, one for app and one for kit.

  • Kit: kit/target/site/checkstyle.html
  • App: kit/target/site/checkstyle.html

scenebuilder's People

Contributors

dukke avatar tiainen avatar jperedadnr avatar abhinayagarwal avatar oliver-loeffler avatar erwin1 avatar almasb avatar gbalderas avatar luca-domenichini avatar jonathangiles avatar pyokagan avatar eugener avatar ktgw0316 avatar aalmiray avatar tawash1 avatar gargoyle avatar johanvos avatar tobiasask avatar cyb3rc0nn0r avatar garzy avatar rnayabed avatar jtkb avatar n-e-g avatar torutk avatar onobrod avatar vbaggiol avatar dependabot[bot] avatar leewyatt avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.