MCPcopy Index your code
hub / github.com/JulienTroudet/easyJavaFXSetup

github.com/JulienTroudet/easyJavaFXSetup @v1.1.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release v1.1.0 ↗ · + Follow
38 symbols 102 edges 7 files 1 documented · 3%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

MyApp - JavaFX Demo Project

🎯 Objective

MyApp is a demo project designed to provide a solid foundation for modern JavaFX applications. It includes all the essential configurations to simplify development, theme management, and multi-platform distribution.

img.png

img_fr.png

🚀 Main Features

  • JavaFX Framework: A robust base for building a smooth and modern UI.
  • Persistence of user settings :
  • Window position on the screen
  • Theme used
  • Text input
  • Built-in Themes:
    • 🌙 Dark Mode
    • ☀️ Light Mode
  • Internationalization (i18n) Support: Ready for multiple languages.
  • Advanced UI Library: AtlantaFX pre-configured for an enhanced application look.
  • Complete Gradle Setup: Advanced configuration for compiling, packaging, and distributing the application easily.
  • Automated Deliverable Generation:
    • Windows: .exe and .msi
    • Linux: .deb and .rpm
    • macOS: .dmg
  • GitHub Actions Workflows:
    • 📦 Automatic builds on tag
    • 🚀 GitHub releases with all deliverables

📦 Installation & Usage

1️⃣ Prerequisites

  • JDK 21 (Temurin recommended)
  • Gradle (if not included in the wrapper)
  • Git (to clone the repository)

2️⃣ Clone the Project

git clone https://github.com/your-repo/MyApp.git
cd MyApp

3️⃣ Run the Application in Development Mode

./gradlew run

🔧 Build and Generate Deliverables

To generate an executable for your OS, use one of the following commands:

./gradlew buildExeForWindows    # Windows EXE
./gradlew buildMsiForWindows    # Windows MSI
./gradlew buildDebForLinux      # Linux DEB
./gradlew buildRpmForLinux      # Linux RPM
./gradlew buildDmgForMacOS      # macOS DMG

There is also an Inno Setup file provided to create a Windows Installer.

🛠️ Contribution

Contributions are welcome! Feel free to suggest improvements via issues or pull requests.

📄 License

This project is licensed under the MIT License. You are free to use and modify it as needed.


💡 MyApp allows you to start a JavaFX project without worrying about complex configurations. Enjoy and create powerful applications right from the start! 🚀

Core symbols most depended-on inside this repo

getSettings
called by 18
src/main/java/myapp/services/UserSettingsService.java
getLocale
called by 3
src/main/java/myapp/services/LocaleService.java
updateAppWindowTitle
called by 2
src/main/java/myapp/App.java
load
called by 2
src/main/java/myapp/controller/MainController.java
computeScreensHash
called by 2
src/main/java/myapp/services/WindowService.java
getSettingsFile
called by 2
src/main/java/myapp/services/UserSettingsService.java
setTheme
called by 2
src/main/java/myapp/services/UserSettingsService.java
initTheme
called by 2
src/main/java/myapp/services/UserSettingsService.java

Shape

Method 32
Class 6

Languages

Java100%

Modules by API surface

src/main/java/myapp/services/UserSettingsService.java19 symbols
src/main/java/myapp/services/WindowService.java5 symbols
src/main/java/myapp/controller/MainController.java5 symbols
src/main/java/myapp/App.java4 symbols
src/main/java/myapp/services/LocaleService.java3 symbols
src/main/java/myapp/services/LocalDirService.java2 symbols

For agents

$ claude mcp add easyJavaFXSetup \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact