Powerful and time-saving code generator for modern Java

Visual and Smarter Way to Develop Java Applications

Clear Design
If you focus on design - and not on low-level details, there are great chances you will have a clear picture and define a good distribution of responsibilities between your components.
Fast Development
As soon as your design is complete, your domain concepts are transformed into Java source code. They are persistent. And marshaled into JSON. No coding needed.
Smooth Maintenance
You change the model and let Rebel propagate changes to your application.
Team Communication
A visual model - dictionary in front of your team members, will make their mutual reference point and will serve as an enabler of clear and focused discussions.
Personal Motivation
If people perform their everyday work more smoothly, there are great chances they will enjoy it more and will be more productive.
Best Practices
Java code generated by Rebel often contains some best practices that have been gathered through years of experience.



Keeps your changes from being overwritten by next code generations

Have a great development experience while using Rebel's built-in modeling types, robust association support and capability to resolve in-model dependencies.

Hibernate logo

Transforms model classes into JPA entities

While you focus on modeling domain concepts, the Rebel will take care of Java Persistence API annotations. It supports different class inheritance mapping strategies and will handle auto-generation of identifiers and supporting methods, such as equals() and hashCode().

Spring by Pivotal

Modeling Spring components

You can model your Spring components using the UML. And you can rely on Rebel to automatically create Spring Data Repositories, Services and Controllers for your persistent classes.

FasterXML - Jackson

Customizing domain serialization through modeling

While you focus on modeling your domain, the Rebel will create Jackson annotations wherever needed. You can customize class hierarchy to JSON mapping, along with different aspects of serialization of your domain model into JSON, by modeling them.

Beside JSON, your domain model is directly serializable into variety of output formats supported by the Jackson framework, out of the box.

Swagger - API Development for Everyone

Make great project documentation while modeling!

You choose whether you want your model documentation to be generated as Javadoc or as Swagger annotations in your Java source code.

What you get from the UML model is a fully running RESTful service, backed by the database, documented by the Swagger! No coding needed.


Holistic approach to software modeling and development

Intuitive, visual support for representing different aspects of the same model, including documentation, behavior, persistence and serialization of domain concepts.

Mature. Powerful. Fast.

The Rebel is a result of more than 10 years of experience. It will transform your ideas into working programs and will do it fast! It will take it a split of the second to create a program with dozens of entities. Boost your creativity by connecting your design process with the state-of-the-art tools and frameworks of modern Java!

What is Rebel?

Rebel is a Java code generation plugin for StarUML, a sophisticated software modeler for agile and concise modeling.

While preserving developer's changes to the generated Java code, Rebel also supports modeling and code generation for Java Persistence API, Spring and Spring Data.

The Rebel is publicly available through the official StarUML Extension Registry. For more information on how to install and use it, please see our Getting Started Guide.

Why StarUML?

The StarUML is ligthweight. What you design is very close to the code that you get.

It is versatile modeling tool. The overall user experience is great and it supports quick-edit: very handy way of editing model elements.

It is cross-platform. You can use it on any operating system.

It is extensible. It is built to support user extensions just like Rebel is.

Our Mission

Our ultimate goal is to put together UML modeling and modern Java ecosystem. To spare you from writing boilerplate code. To automate software development as much as possible. To bring together state of the art tools and practices along with modeling and thinking.

Our current focus is on supporting Spring and Spring Boot application development.

Great work provides a great integrity.