Stepper is a flexible workflow/pipeline system that allows the assembly of different scenarios (called flows) from common components (called steps). It facilitates the execution of these flows and generation of the desired results. The project encompasses various UI clients (simple CLI, Desktop, Client-server), user and permission management components, concurrent client support, and data collection for progress tracking.
- Java 8
- Client-server architecture (Tomcat)
- Multithreading
- JSON serialization (Gson)
- Desktop application - JavaFX
- Users and permission management
- SQL JDBC
- XML Parser (Jaxb)
This project is a comprehensive system designed for managing stepper engines. It comprises several modules, each serving a distinct purpose to fulfill the requirements of the system.
-
Stepper Engine
- The
stepper-enginemodule holds all the core logic and functionalities of the product. It serves as the backbone of the entire system, providing essential operations and computations for controlling stepper engines (XML parse, run flows, etc.).
- The
-
Stepper Server App
- The
stepper-server-appmodule manages all client endpoints. It relies on the logic provided by thestepper-enginemodule, making it dependent on its functionalities to address client requests effectively.
- The
-
Stepper Client
- The
stepper-clientmodule represents the user interface for interacting with the system as a client. It provides a user-friendly interface for users to access and utilize the features offered by the system.
- The
-
Stepper Admin Client
- The
stepper-admin-clientmodule serves as the administrative interface for managing users and loading steps via XML. It offers administrative functionalities to oversee and control various aspects of the system's operation.
- The
-
DTO (Data Transfer Object)
- The
dtomodule facilitates the exchange of data between the server and clients. It defines structured objects used for server responses and client requests, ensuring seamless communication and data consistency throughout the system.
- The
-
Stepper UI (Cmd)
- The
stepper-uimodule provides a command-line interface (CLI) for running the application as a single instance without a server-client architecture. It offers basic functionalities accessible via the command line. Please note that this module are no longer actively maintained.
- The
-
Stepper UI JavaFX
- The
stepper-ui-Javafxmodule offers the same functionality as thestepper-uimodule but provides a JavaFX-based graphical user interface (GUI) for improved user experience. It allows users to interact with the application using a visual interface. Please note that this module are no longer actively maintained.
- The



