Class NerveMindApplication
java.lang.Object
ai.nervemind.app.NerveMindApplication
@SpringBootApplication(scanBasePackages="ai.nervemind")
@EnableScheduling
@EnableJpaRepositories(basePackages="ai.nervemind.app.database.repository")
public class NerveMindApplication
extends Object
Main entry point for the NerveMind application.
This class bootstraps both the Spring Boot backend and the JavaFX frontend, integrating them into a unified desktop application for workflow automation.
Application Architecture
┌─────────────────────────────────────────────────────────────────────────────┐ │ NerveMind Application │ ├─────────────────────────────────────────────────────────────────────────────┤ │ ┌─────────────────────────────┐ ┌─────────────────────────────────────┐ │ │ │ Spring Boot Backend │ │ JavaFX Frontend │ │ │ │ ┌───────────────────────┐ │ │ ┌───────────────────────────────┐ │ │ │ │ │ Workflow Engine │ │ │ │ Workflow Canvas │ │ │ │ │ │ Plugin System │ │ │ │ Node Palette │ │ │ │ │ │ Database (H2/SQLite)│ │ │ │ Properties Panel │ │ │ │ │ │ REST API (optional) │ │ │ │ Execution Console │ │ │ │ │ └───────────────────────┘ │ │ └───────────────────────────────┘ │ │ │ └─────────────────────────────┘ └─────────────────────────────────────┘ │ └─────────────────────────────────────────────────────────────────────────────┘
Startup Sequence
- Spring Boot initialization - Services, repositories, and plugins are loaded
- JavaFX launch - The UI is started on the JavaFX Application Thread
- Context injection - Spring context is passed to UI components
Command Line Options
--no-ui- Run in headless mode (useful for testing and CI/CD)
Module Dependencies
app (this module)
├── common (shared interfaces, DTOs, domain models)
├── plugin-api (plugin development API)
├── plugins/file-watcher (bundled file trigger plugin)
└── ui (JavaFX user interface)
- Since:
- 1.0.0
- See Also:
-
Constructor Summary
Constructors -
Method Summary
-
Constructor Details
-
NerveMindApplication
public NerveMindApplication()Default constructor for Spring Boot.
-
-
Method Details
-
main
Application entry point.Initializes Spring Boot first, then launches the JavaFX UI unless running in headless mode.
- Parameters:
args- command line arguments; supports--no-uifor headless mode
-