An image annotation desktop-application written in Java using the JavaFX application platform.

Overview

Bounding Box Editor Icon
Bounding Box Editor

Build Status Codecov Coverage (master) Quality Gate Status Language Grade: Java GitHub Release (latest by date) License

This is an image annotation desktop-application written in Java using the JavaFX application platform. It allows you to create bounding box annotations using rectangular and polygonal shapes. Annotations can be imported and saved from/to JSON files, Pascal VOC format XML-files or YOLO format TXT-files.


Demo screenshot of release v2.0.0.

Main Features

  • Create rectangular and polygonal bounding box annotations for objects in images
  • Export and import rectangular and polygonal bounding box annotations to and from JSON and XML files (using Pascal VOC format)
  • Export and import rectangular bounding box annotations using the YOLO format
  • Connect your own Torch Serve prediction endpoint and use bounding box predictions as annotation hints
  • Format validation and error reporting when importing annotations
  • Nest bounding box labels (which is then reflected in the output XML-file if using Pascal VOC format)
  • Easily and swiftly navigate and search the loaded image files via a side-panel with thumbnails
  • Tag bounding boxes using tags defined in the Pascal VOC format (truncated, difficult, occluded, pose: *, action: *)
  • Color-coded, searchable and fully dynamic object categories

Latest Release

GitHub release (latest by date) platform

Download the latest release installer or portable image (no installation required) of Bounding Box Editor for your operating system from the links below. These files were created using the jpackage packaging tool, the Badass JLink Gradle plugin and github-actions.

OS Installer Portable
Linux deb, rpm image
macOS dmg image
Windows exe image

Note for Linux users with Hi-DPI screens
Currently JavaFX does not follow the system-wide scale settings in some Linux distributions (see e.g. bug reports here and here). The easiest way to set the desired scaling manually is by setting the GDK_SCALE variable when starting the application from the terminal, for example:

GDK_SCALE=2x ./boundingboxeditor

Alternative installation methods

Windows (chocolatey package)

choco install boundingboxeditor

How to use the application

Please refer to the User Manual in the Wiki for a detailed usage guide and presentation (including gifs) of the application's main functions.

Using annotations for object detection

After having created annotations for your images, you can use the saved bounding boxes as ground-truths in the training and evaluation of neural networks in order to perform object-detection tasks. How this can be done for any kind of labeled objects using Python and the Pytorch deep learning library is shown exemplarily in the Humpback Whale Fluke Detection - Jupyter notebook which you can find in my Machine Learning repo.

How to build the application

The project uses Gradle as build-system. You will need to have Gradle version 5+ and a Java JDK version 11+ installed on your system, e.g. from OpenJDK. After cloning the repository into a folder on your machine you may build the application from the root folder by opening a command line and using:

gradlew build # Add "-x test" to skip the UI-tests.

Note: The concrete way of invoking gradlew depends on your OS and used command line:

  • Linux & MacOs: ./gradlew ...
  • Windows:
    • Command Prompt: gradlew ...
    • Powershell: .\gradlew ...

How to run the application

To run the app using Gradle, use:

gradlew run

How to run the tests

The project comes equipped with automatic UI-tests which use TestFX and the JUnit 5 testing frameworks. Due to some used functionality in the implemented tests it is (currently) not possible to run the tests in headless mode.

To run the tests, use :

gradlew test

How to build the latest Linux image and installers using Docker

First build the Docker image from the cloned repo's root directory using:

docker image build -t bbeditor .

Then create a writable container layer over the image (without starting a container):

docker container create --name bbeditor bbeditor

Finally, copy the directory containing the build artifacts to the host:

docker container cp bbeditor:/artifacts .

Alternative:
If you have a recent Docker version that supports BuildKit engine (version >= 19.03) you can do the whole build using a one-line command:

DOCKER_BUILDKIT=1 docker image build --target artifacts --output type=local,dest=. . 

Acknowledgements

Special thanks to JetBrains for supporting this project with an Open Source license to their developer tools!

License

This project is licensed under GPL v3. See LICENSE.

Comments
  • Add handling of EXIF oriented jpeg images

    Add handling of EXIF oriented jpeg images

    • Before loading, EXIF data in jpeg images is parsed and (if present) the orientation tag is extracted.
    • Jpeg images with EXIF orientation data are now loaded (in main view and file explorer side-panel) with correct orientation based on the extracted orientation tag.
    • Annotation import/export and bounding box prediction handling are updated to correctly handle images with EXIF orientation data.
    • Maximum image loading size in main image view is changed to 3072 x 3072 (from non-square 3200 x 2000).
    • Adds test jpegs with EXIF orientation and unit tests to test image loading, annotation and bounding-box prediction handling for images with EXIF orientation.

    Closes #42 .

    opened by mfl28 2
  • Fix reflection and modularity errors wrt. jakarta and gson.

    Fix reflection and modularity errors wrt. jakarta and gson.

    • Explicitly add missing "uses" directives (that cannot be determined automatically) to jlink mergeModule section to fix modularity errors in the runtime images (-> jakarta).
    • Transform ModelEntry and BoundingBoxPredictionEntry records back to data classes as Gson does not seem to have reflective access to set the fields of records.
    • Verify the equality contract of the data classes in unit tests.

    Fixes #30 .

    opened by mfl28 2
  • Add freehand polygon-drawing feature

    Add freehand polygon-drawing feature

    • Adds freehand polygon-drawing feature including (optional) topology-preserving simplification.
    • Adds EditorSettingsPane in settings to set polygon simplification algorithm settings.
    • Adds tests.

    Closes #24 .

    opened by mfl28 2
  • Remove category change contextmenu item for non-View tree cells

    Remove category change contextmenu item for non-View tree cells

    • Removes the "Change Category" contextmenu-item for object tree cells whose corresponding cell-object is not a View instance.
    • Adds test assertions.

    Fixes #22 .

    opened by mfl28 2
  • Upgrade Gradle and plugins

    Upgrade Gradle and plugins

    • Upgrades Gradle to latest version 7.5.1.
    • Upgrades plugins (except for jersey/jaxb plugins - those are currently not compatible) to latest stable versions.
    • Updates build.gradle not to use now deprecated features.

    Closes #10 .

    opened by mfl28 2
  • Switch to sass-gradle-plugin

    Switch to sass-gradle-plugin

    • Switches from LibSassGradlePlugin to sass-gradle-plugin.
    • Outputs generated css-stylesheet to build directory instead of source resources folder, thereby fixing build error when no previous stylesheet.css file exists. Therefore stylesheet.css is removed from source resource folder.

    Closes #8 .

    opened by mfl28 2
  • Update CI branch triggers

    Update CI branch triggers

    • Triggers CI only on pull_requests and pushes to master branch.
    • Explicitly sets GA runner macOS version to 10.15 (jpackage fails on latest macOS runner).

    Closes #2 .

    opened by mfl28 2
  • Try to read images instead of relying on file extension when selecting valid image files.

    Try to read images instead of relying on file extension when selecting valid image files.

    • Image files should not be filtered based on their extension as some image files might not have an extension on Unix systems. There are also formats with several different valid extensions (e.g. .jpg, .jpeg). Instead try to read the file. If it can be read -> OK, otherwise report invalid or unsupported files in an error report dialog.
    enhancement 
    opened by mfl28 1
  • Correctly handle jpeg images with EXIF orientation data

    Correctly handle jpeg images with EXIF orientation data

    • EXIF orientation data in jpeg files must be parsed and the images must be correctly oriented based on a EXIF orientation tag (if present).
    • Concerns loading of images in main view, the image file explorer, making prediction-requests and annotation export/import.
    enhancement 
    opened by mfl28 0
  • Fetching model and prediction from TorchServe server causes modularity errors/illegal reflective access

    Fetching model and prediction from TorchServe server causes modularity errors/illegal reflective access

    • An exception regarding missing "uses" directives for jakarta module is thrown when fetching model-data from TorchServe management servers.
    • Deserializing prediction response into instances of records causes illegal reflective access exceptions (-> gson).
    bug 
    opened by mfl28 0
Releases(v2.4.0)
  • v2.4.0(Oct 9, 2022)

    Main new features:

    • Adds freehand polygon drawing mode with optional (automatic) topological simplification. The "strength" of the simplification can be set via a new settings section. Simplification algorithm can also be triggered manually for each polygon object via a new context-menu entry.
    • Upgrades to latest JavaFX 19 release.
    • Introduces several bugfixes.

    Changes:

    • d565c78424387087c07e650158e169d1dd326535 Merge pull request #33 from mfl28/feature/bump-version-to-2.4.0
    • 9dfd1a49139104a4535ce67e00f70f3cdcad3d97 Bump version to 2.4.0.
    • f0c5876a337ca6bcbd8cc3bf4e187ed415197a63 Merge pull request #31 from mfl28/bugfix/fix-reflection-and-modularity-errors
    • ca99fa8cd2f47e6e2bcfbd163dece27241f8e221 Fix reflection and modularity errors wrt. jakarta and gson.
    • 1dcaa0bba5d289683f49297d374e63bcb16db589 Merge pull request #29 from mfl28/feature/upgrade-to-javafx-19
    • 8a6b0b304f39fb887fb1f9d37d14b42014de3407 Upgrade to JavaFX 19, update tests.
    • 5acc75a7dbead3d7d9a041c9e029a662f8565492 Merge pull request #27 from mfl28/feature/streamline-scene-key-event-handling
    • 3eed1a4dd0d2e785a8e8e0ae8884bcbc7bd47af6 Add scene-key shortcut tests.
    • 5f3ef09f5012d1d2993525179546b2ec118652bb Streamline scene key-event handling, introduce single fire events, update image navigation shortcuts.
    • e73f4c8292c9c21d8df5b7f88b04059aaa3fa489 Merge pull request #25 from mfl28/feature/add-freehand-polygon-drawing
    See More
    • 9d71b64a1c3ec6e864d0461c52d801d286d6677c Simplify freehand-shape view.
    • 454d58a66736c104f7c199c70d4f8412d6321d17 Update license headers.
    • cb1babeec22e0a2767e5685feabf4e19924861d7 Integrate freehand polygon drawing, add simplification feature, add tests.
    • 369836c1de5d2301cccdfa4bffeda70496cda805 Transform freehand-shapes to polygons, add basic polygon simplification functionality.
    • e8ec4754dec7da267d92c63ed1b57371195de3ec Update license headers.
    • 0bddc3a98dbe97106b6ead2498b3095830768e5f Add basic freehand shape drawing functionality.
    • 01e553d1d0c9f27e6f43a2cb9011994a5aa0e6f8 Merge pull request #23 from mfl28/bugfix/remove-change-category-menuitem-for-category-tree-cells
    • 8a0176b9229960810ca6f9d42eb8256164a67bc8 Remove category change contextmenu item for category tree cells.
    • 1902b1b795b31d2a942203f679da1969886d23fe Merge pull request #21 from mfl28/feature/upgrade-ci-macos-environment
    • b87b54a7acff23b955db3596895cdd028a3686f0 Upgrade CI macos-environment.
    • b50bc34097edf14a1fe26ee391b55737319ac228 Delay CI codecov result notification (#19)
    • ba3bc56e971fadf182864f2190cab661932591a0 Add Java 16+ improvements (#17)
    • 4dad1849c8df217e6e9f1e62477dea6f8c8ac91f Use Java 17, upgrade Github actions (#15)
    • 34e49890f4821dd0d3df1178e70b6fc3aa9be9c2 Merge pull request #13 from mfl28/feature/switch-from-javax-to-jakarta
    • 3e8094fa37894ad19a356eb7ac235cdcd86ff218 Switch from javax to jakarta, upgrade dependencies.
    • 46021a940a83965ba426d7957d8791c427491cd2 Merge pull request #11 from mfl28/feature/upgrade-gradle-and-plugins
    • a5dd807c9464cc9f491c6cd9978dfb0e792ec58a Upgrade Gradle and plugins.
    • 792fdfaf3efa6618eefbd63800da73e0a5dcd00b Merge pull request #9 from mfl28/feature/switch-to-sass-gradle-plugin
    • fbfa0da720fb931299e0f065e9b25eb8889a67a3 Update acknowledgments.
    • 27f56b2d53e85e36bfafaa626082bc5ad5879047 Switch to sass-gradle-plugin, output generated css to build directory.
    • 4577ca03f289b7e9bbcf4b41d8a9ecb02a27a05a Merge pull request #7 from mfl28/feature/upgrade-to-javafx-18
    • fe01c98fd0ef288c0b3d4f97767a15a683d2b011 Update test license headers.
    • 4d301006cceb6b45465fecaa7ec6ea618e64528c Update license headers.
    • d27f7b735ccd884e58b4e8286a206eb5f58b7772 Upgrade to JavaFX 18.
    • c2e946b2b3c81e709b6afafb5baa1089ad5df787 Merge pull request #5 from mfl28/feature/upgrade-javafx-and-dependencies
    • 53fcfaa64bc1f5989bd305a4be3865baf7c2e799 Upgrade to JavaFX 17, update dependencies.
    • 7308eb84ca6d9c40b2093c6a48b292c5cb454115 Merge pull request #3 from mfl28/feature/update-ci-branch-triggers
    • f59a2566591b2b25adb4b10ce5c5ead876be4a09 Fix CI triggering twice on PR branch push, explicitly set GA runner macOS version.
    • 02638a50fc54a41fedd322cda8045059ec628a85 Update CI branch triggers.
    • c9680475a7483a22ca18f829ed7e133c784da979 Add unsupported image file format loading test.
    • b374beaedff38248a3770e4390ee136b18b9ebca Fix sonarlint minor code smells.
    • dae3204e74f30dac5604bae62523815457604041 Resolve sonarlint XML parsing vulnerability warnings.
    • fb195f7ca0672583752aaf590f0da7553fc797c1 Update license headers.
    • f62d92c7dd5e0d51e9d0063a34fcda591cf629f8 Improve image file loading by relying on file format instead of extension.
    • e23577b79e81f684bbd17bc7b36fefdbd73de60d Update chocolatey version notice.
    • 405f5f26793e9be699979e979cd81dcea9daefc6 Update chocolatey files.
    • 237ab4ed0fa65722a0e778cce4c31f64b9fe2e25 Update README.
    Source code(tar.gz)
    Source code(zip)
    boundingboxeditor-2.4.0-1.x86_64.rpm(44.25 MB)
    boundingboxeditor-2.4.0.dmg(43.34 MB)
    boundingboxeditor-2.4.0.exe(43.13 MB)
    boundingboxeditor-portable-linux.zip(44.40 MB)
    boundingboxeditor-portable-macos.zip(41.44 MB)
    boundingboxeditor-portable-windows.zip(41.68 MB)
    boundingboxeditor_2.4.0-1_amd64.deb(40.61 MB)
  • v2.3.0(Nov 12, 2020)

    Main new features:

    • Functionality to connect a Torch Serve prediction endpoint and get bounding box predictions.
    • Inference and UI settings in new Settings dialog:
      • Torch Serve management and inference server setup
      • Functionality to fetch and choose models that are registered with Torch Serve to use as prediction models
      • Prediction settings (e.g. minimum score, merging with existing categories)
      • Settings for image preprocessing such as resizing images before performing predictions
    • Bounding Box preview popover when hovering items in the Object tree.
    • New hide and show menu entries (e.g. show all, hide others...) in bounding box context menus.

    Changes:

    • 675171b548ae6610df209a3a63d34ed4e97d9566 Bump app version to 2.3.0.
    • fa0c0bd6f1d13dc0100c113d2d339a759d502662 Rename Annotated Objects tree label, remove rounded popover border.
    • 8110f6f4f3a16783ba36089294ebd5fe9aa27197 Update dependencies.
    • 40794c122cabdd438d11c0aee6e55d626d28e6f2 Refactor settings window fetching.
    • 9e5ff512680445fe21dd0d7902c92b3e89462e90 Add missing css units.
    • 88d9b2a9b689700e36f6d5a32f9ccb897e926fad Refactor settings dialog, set owning parent windows for dialogs, center progress dialogs relative to parent, add settings test.
    • 3067dac3a840f7998523093b548dd1df3ebdc5bd Add hide and show menu items to object context menus.
    • bb20e11aa02f82f29665c607f8c552a8c01a7bea Refactor long functions.
    • a5637c6b8befe09f43a6cd9e58414c2157020169 Set settings and progress dialogs to always be on top.
    • c5bb447a2e1dabe00efc20c556080868baafab8d Add timout waits for settings in rest client tests, update github actions workflow.
    See More
    • fa341cd9cc30708ab923709939082020e80d52b7 Fix navigation buttons not being centered in toolbar, update overflow style.
    • 3c8a19bb46fd6bb830cec440326c9fe09cbcb21a Auto-close MultiPart.
    • f121bd0e8461833f4a62481eb275f481bc984092 Fix jpackage configuration, disable predict button while images are loading, improve torch serve client tests.
    • 43a3b0de636f479aa1e5079a13dc4ec9cc20b973 Update license headers.
    • a52763b547f4458291dabff5a9839dd920bed01b Add torch serve prediction client tests, add settings validation, reuse rest client objects, improve dialog title format consistency.
    • 1af3a16dd0296df39ae879fed632e310e3751abe Use gson for restclient json handling, add mockito for client tests, add delay to object tree popover, fix missing highlighting of bounding boxes on object tree item hover.
    • 22d4cdf2b03391e0b045ab161ba83356644a442c Add settings tests, fix minimum prediction score setting update from config.
    • f4a60f20ebcbe369f4e4a5e96846d304d9b892be Add annotated object image popover, add ui settings, update settings visuals, fix object cell toggleicon click sometimes not firing.
    • 44219d66e992daa72c760b85b12b92de8c31240c Run tests maximized based on property, remove redundant test method argument.
    • f79b6b31f21b649cdc254d508f200b2caf43575f Add prediction and prediction image preprocessing settings, add torch serve client error handling, refine scss.
    • 289a3b0a8420b6225daf8e406f11be5614d73b48 Add settings dialog with inference server setup, add torch serve model-names fetching service via REST client, update scss, close progress-dialogs on service success.
    • dec2a6af08b5ea52cb9e149a4eeac3b1448ba9d1 Add torchserve client and basic bounding box prediction functionality.
    • a5d97565dccb2deba681d0b6fbaaa9d249fc5eff Add Windows chocolatey package installation instructions.
    • 4f7d3fb9092eb42ada2209d14b7fef1494778aff Fix zipped portable image folder structure for future releases.
    • a827911f498e5a394aa16ac96e5ada2e026d2956 Add chocolatey package configuration files.
    Source code(tar.gz)
    Source code(zip)
    boundingboxeditor-2.3.0-1.x86_64.rpm(43.24 MB)
    boundingboxeditor-2.3.0.dmg(39.72 MB)
    boundingboxeditor-2.3.0.exe(40.84 MB)
    boundingboxeditor-portable-linux.zip(43.40 MB)
    boundingboxeditor-portable-macos.zip(38.36 MB)
    boundingboxeditor-portable-windows.zip(40.83 MB)
    boundingboxeditor_2.3.0-1_amd64.deb(39.60 MB)
  • v2.2.0(Oct 5, 2020)

    Main new features:

    • Installers and portable images for Linux, macOS and Windows.

    Changes:

    • 41f2b835ae56de5e65fc6e3852ffb2a2a33b44ce Make installers lowercase.
    • 6ff0b14dd56a1de202c2425c2bea348c79bee3e4 Update ci release script.
    • bca07611ab54b5d6d065c42c05224f5ce6065e92 Update latest release links.
    • 1062015211d04134ed926d7b309e5279cb2173c2 Update jpackage image name.
    • 25165170c50dec51e4fbcab3e24ad7b26a8df9ea Update release changelog creation in ci, upload installers without zipping.
    • 12b7aa5b210d0484ecabe2c7edaf565dc09e4d89 Add group id.
    • 9b2f9d65f1d0656e87d670a419fec5d84a854f02 Update app-icons.
    • 2d04a08481cc07a41532e1afa6d0c49773fe45b0 Center badges.
    • 99607431604541b457e40d0434f913c7ed73b1ca Add README logo-text.
    • 822c67591fed5281cde7053c90bbc98e73de1cf9 Fix release download links.
    See More
    • 2e837d26265a4396130389a976839566aa5a550d Update release download links, add badges.
    • 5a306bf72b87af0dbe05ffb57ff716819bfb05af Remove redundant release creation action from ci.
    • 5107aa435145e42b4ce4399ec790e37edd1d0f6a Fix release asset upload.
    • 94e509bedd6fcd1748d3779e0a43c81148583887 Fix github-actions release changelog creation.
    • 46f6b3764bc3627285fcc8da3aafcf6d7b9e635b Bump version number to 2.2.0.
    • 3c5deead1a1ac030b9c25f8d45a39888681849b5 Add jpackage installer arguments.
    • 2a5d77d8bbfecf09db36f5d3373dada02d5ec1cd Update badges.
    • 164f404a0f6824bc30aeb306ebf395aa5b665093 Update Docker build to use jpackage, update build description in README.
    • c83ec856400d0ef3bda8921e054ff8ecdd371d95 Upgrade to javafx 15.
    • 000c95440480e9f230d31f1c00ab0f146294f93e Update github-actions artifact names.
    • 9d812b3f5c368a870bc545b079c2677829fd3921 Remove azure-pipelines CI (replaced by github-actions).
    • 766469b01e65d2284273a1c02f1736d6aac6a5ea Add license headers.
    • 870695cc18764ae2025d20a0cfc1bb9c442bd56f Fix macOS image upload in ci.
    • 014bdc7354fcbce6839bf42e6f83648523160461 Add github-actions release job, add test tags, run non-ui tests on macOS in ci.
    • 46f325f933d2fb81f88b3c2ce26ea672a7dd2da9 Disable git shallow clone in github-actions ci.
    • 096ea3525be160580704f418da596f7a1339a180 Add sonarqube analysis to github-actions pipeline.
    • 22505fb842b1d0f8337b040939f13f0d46c14062 Disable ci tests for macOS due to missing mouse/keyboard interactability in vm.
    • 002642231d16422f0b56ae41c59d46dc76a40e73 Update jvmargs, lookup menuitems by id in tests.
    • c54f4ae0084b3a9805b5149c89ab1524fcf16f11 Update tests.
    • ae9696fd066e342856f4ebcdc7b26909708e6903 Start xvfb with windowmanager in Linux ci tests.
    • cde68c09fdde7fab2267c44595b65afb2686c04c Add system property to start tests fullscreen in ci.
    • ca1bd4b520b50e214f6c4ec182cd5145907e27fe Add failed test screenshot capturing and ci upload.
    • a7ad24cae29d6aa2f25d28cca84478a1cdf228a8 Add github actions specific test jvmargs.
    • 09947ebc90a70e8b491c4f1483f53849c44ccb5c Increase test timout duration.
    • 06c905f76721543c84a105fd4578c6eb18bfbbfe Fix alert panes not always being positioned on top, add service succeeded tests, add test jvmArgs.
    • 31234a592bdfb54a12c53c095d702c12f157d792 Refactor github actions workflow into different jobs, add Linux and macOS test steps.
    • 6ee9922c796247c62f7eb3b59d92d431e178c429 Add Windows tests step to github-actions.
    • 51f2cabec92ccbcba2789417462ae0615b6ab37a Add Gradle jpackage configuration, add jpackage build steps to github-actions.
    • 68e44e3fa7cb361d94ceee03202732b11fa2718b Add basic github-actions build workflow.
    Source code(tar.gz)
    Source code(zip)
    boundingboxeditor-2.2.0-1.x86_64.rpm(39.61 MB)
    boundingboxeditor-2.2.0.dmg(35.99 MB)
    boundingboxeditor-2.2.0.exe(37.21 MB)
    boundingboxeditor-portable-linux.zip(39.76 MB)
    boundingboxeditor-portable-macos.zip(34.73 MB)
    boundingboxeditor-portable-windows.zip(37.24 MB)
    boundingboxeditor_2.2.0-1_amd64.deb(36.10 MB)
  • v2.1.1(Sep 21, 2020)

    Changes:

    • d393a95682f0cea1f4f66120a176ad0cfeaa9439 Add missing opens declaration for io.results package.
    • 4beab573c9bec84ebcd0dddcd0567c2dc7420383 Update dependency versions, bump app version to 2.1.1.
    • c415d1efef0c5e71253189619dd2767116e49b50 Add missing module-info opens declarations.
    • 2a647bf3d1be5bee45dc6c6449e9a22945ff99a4 Refactor long image meta-data loading method, fix code smells.
    • 82d1b2352e6169dfc1cddf88ea1d513333d50587 Refactor services, add new packages.
    • b82e41b59ac233a1ab8606872674e4c50e5c75b1 Refactor services to reduce coupling with model, set JSON annotation loading to serial for reliable parsing error messages.
    • a22c5c94d0b8b3f77f2572259da6667a56e9204e Add empty and corrupt JSON annotation file import error handling.

    This list of changes was auto generated.

    Source code(tar.gz)
    Source code(zip)
    boundingboxeditor-linux.zip(39.26 MB)
    boundingboxeditor-mac.zip(34.36 MB)
    boundingboxeditor-win.zip(38.42 MB)
  • v2.1.0(Sep 14, 2020)

    Main New Features:

    • JSON annotation format import and export.
    • Check if annotation changes were saved, including a saved status indicator.

    Changes:

    • 8e00051717452a58a4b68cc87d2956931fb9d9df Exclude paths from CI trigger.
    • 803d3c9e6a08d4b976f1309ea6d6b18aa58d79d9 Update README, add Sonarcloud quality gate badge.
    • 7287ccc3eaa4c50846dc45569bbd628a1f1eb6f3 Refactor tests, add more detailed JSON annotation loading tests.
    • b77cb199255db82614781934b9b201a3b96b21ce Add tests.
    • b3fbfe4551bb5ced0eaa7c58db42874ac9cbbfdd Improve image filewatcher, add filewatcher test.
    • 30e27ab1fe4e1f7b7f9b6225a1f26d86522084da Fix code smells.
    • 85fbaa0f03d09c45c08072d1e843749e4321ffa2 Add parallel JSON deserialization, perform refactorings, improve tests.
    • de4db6f93c2136183151e78d6bf1ce33a5859c9b Refactor io metadata to new class, add tests for io metadata updating and for utils classes.
    • 5b3f687f56dadddda7da19d5d808b5994646e265 Add annotations saved check including dynamic indicator, add tests.
    • a3e93e39b7d4226557f49b84962a8ba8649cc1fb Improve tests.
    See More
    • 4ded075d4c958f7628574c36663be7b858a38c42 Add test for loading JSON files with invalid elements, update error messages.
    • 262610f23bc4313e9892ade19980e266b6381e38 Refactor constants and remove runtime exception throw declarations in JSON loading code.
    • 66029f77573ece34be133b8de8a5b69b24d1c889 Set JSON annotation file reader and writer charset to UTF8, add gitattributes to force LF line endings in JSON files.
    • c510610f45a7901df8b962639bf18d5c97b43fe0 Add JSON format annotation loading and saving test.
    • 39c2017454ccb50eaa52cbab84ca01156727ae91 Fix JSON category field name.
    • 5f918ef7b0f91d244735ce5d51546a9d20f7990a Fix annotation loading source and saving destination saving.
    • 36c78f32375b399ff2a2d90af50bfd8fb48703da Reformat code.
    • ef23ba61fc020e4cb1e1f426ead5974ac28f9099 Add JSON loading parser-error handling.
    • 3e0f6e4deaedf4cc8501239513790e5ec6db1d2f Add JSON format annotation import.
    • 4c4abf3028d4e76e894a1814a9ad627bb11f8575 Remove model update when importing an empty list of annotations.
    • 283f9cc7d74fd2412191c80afc3c675b3ca3ef0d Refactor filewatcher runnable, fix code style issues.
    • ccf13d5bf687cfba79a7c84d1ce87e38cd4e374b Add JSON format annotation export.

    This list of changes was auto generated.

    Source code(tar.gz)
    Source code(zip)
    boundingboxeditor-linux.zip(39.26 MB)
    boundingboxeditor-mac.zip(34.36 MB)
    boundingboxeditor-win.zip(38.43 MB)
  • v2.0.1(Aug 28, 2020)

    Changes:

    • f3054dc24bdd817ecfedf78d1ddb9c1e4d31e7f1 Remove artifact publishing branch condition in azure pipelines.
    • 260a0db749ed2d039271616e0e1bd390ade627c0 Add option to build Linux runtime image using Docker.
    • 5adf59f42bb0e48d38430cbf588344bd6b8c9744 Add Hi-DPI scaling note for Linux users.
    • 157d89169e1a3cc328253526c34d019c6b3c68aa Fix Gradle application main class name.
    • ead14ce6cab44c322475985e02dde5cc5a3a18cb Force JavaFx hardware acceleration if available via JVM argument, remove redundant gradle plugins.
    • 63cab49bc58dd2c5ef4fb470d9f0d2a4fcc8314f Update plugins and gradle, fix new errorprone warnings.
    • bd3e02a37fa734c5e61a2452190397f02fe92146 Add PR trigger to CI.
    • 16f181f865d3e9e08a164009d9b1f9f57a4df028 Add fixed screen resolution to Azure pipelines test job, update other jobs, re-add test badges to README.
    • 4250303ecab253209b2e9fc0202b531765039948 Switch on tests in Azure pipeline with increased Matchers timeout.
    • 74cfdb009d0d28734939fa84e3e3646529f1a91a Update azure pipeline and jobs, upgrade caffeine Gradle plugin.
    See More
    • cdcb034163c3d1a5a5eab96b920e31ea578067f5 Update readme.
    • a5b446dea46b7efed7b84bfe35d0ee19fdcdc5b9 Add JetBrains Open Source license acknowledgment.

    This list of changes was auto generated.

    Source code(tar.gz)
    Source code(zip)
    boundingboxeditor-linux.zip(39.00 MB)
    boundingboxeditor-mac.zip(34.10 MB)
    boundingboxeditor-win.zip(38.19 MB)
  • v2.0.0(Apr 11, 2020)

    Main New Features:

    • Annotation import and export of rectangular bounding boxes using YOLO format.
    • Polygonal bounding box - drawing and editing including export and import to/from PVOC format files.
    • Option to change assigned category of existing bounding boxes.

    Changes:

    • 36ed6ed62f00ff2ee8052e3252795483472e2b0b Remove azure build pipeline publish task branch condition.
    • 05d9725d44a8c0e702105ce1afcf1c0b81e2b10a Update description, app version number.
    • 03fe1481c941675813d59742e7029a8bbbe99efe Make azure-pipelines release task depend on build instead of test.
    • f722ae3e17598b0f8369670009ee528674b37215 Add image load waiting criterion in tests.
    • 1f0bd47fa162a64ccb16cc76bac5e5b65728407a Show save annotations choice dialog after new image folder was checked, update documentations.
    • ae87b554dcb344ab7d4a91fdad4f0dcfbf19aab1 Add format choice dialog when saving without using the File menu, add keep existing categories dialog when loading a new folder.
    • 45b60f9f7b2058f5c3ad7beec6cd89151ef7eaba Add image-file loading service, validate all image-files and load metadata in background on folder import, add file-watcher for image-folder.
    • 33f1199f524d777e11ccb2eebe4f3c4f18397bb0 Fix category selector contextmenu showing on empty cells, add error dialog when changing to a blank category name on text cell edit, update tests.
    • 4e72d5636aaa3481412662545b30c28be186879b Load internal image-metadata only from image files directly (not annotations), fix reloading of thumbnail cache when files have changed.
    • b259b42639d64b050b1d40e65a1c18cdf1d91acc Add YOLO format loading error handling, add tests, add app icon to all dialogs, update UI-styling, fix timer.
    See More
    • b78139fd8805b5a830e906be94959c84e6ee2b11 Set appname to lowercase.
    • 3ad9ba8093c70582246a94b7d41a460947332909 Make bounds/points for bounding shape data objects relative, add image meta-data check while loading PVOC annotations, update tests.
    • 7451b5a6cebceaaf4473bd9e76fd310883fc6715 Add YOLO annotation format import and export.
    • 062b689d05725ef81d8a5e4b3aa69eb07916cdee Fix uncleared bounding-shapes bug when reloading annotations.
    • 101fb713d8e4362bd0087a6301900e9d42795bb5 Add test for uncleared boundingshapes bug when reloading annotations.
    • a42a3bf998d1e1d26025da5dcafd2964198bc5e8 Temporarily disable testing due to load-problems(?) in CI system (testing is done locally on Windows for the time being).
    • 71e53d2f7a75540f82f97cfcd7e281227b067d5e Add shortcuts for category-change, polygon vertices addition & deletion actions, refactor treeitem reattachment methods.
    • 2edacf09ba88878f83cdda738d361a27a4f0b327 Add timeout asserts to image loading methods in tests.
    • 53f063fea8ec610d49d1fcb8124bbf695c7d8ecb Refactor testing methods. Fix combo-box tests.
    • 003c76ec5684ac0ee869eab8c2a7f305e96370ed Add timeouts to category entering in tests.
    • f91a70ab59aa23320860d40295f06e337fc01ba5 Add category change feature, update tests.
    • 25d47849f6fbff4164950addf49a4b78bba0b17f Set initial directory of directory choosers to previously chosen directory.
    • e96dc4bdf4efbeb23612155a6248e048f6eb159e Add custom progress-bar styling.
    • afd6b04549712b948ab7ba8e7ead86190409b92d Add custom dialog styling.
    • 237066e6c886e21151a674411a4f337f82a07f60 Add annotation import, rectangle and polygon drawing mode icons.
    • 8fe81ae34e33bc7d23c6a305ca0b75720775e1e7 Cleanup build.gradle.
    • a07175bdc4e1bc3c8d9cbdd7792eba647e551185 Remove redundant cell updates in object treeview.
    • 9130d11ffbd20c18c80e0199d3ad75dc0021310b Refactor common shape operations.
    • 61e5663a69e59928aa9ef565175886a44fdc9405 Upgrade jlink plugin.
    • 50eed64bb23f10ca8b170118ecbd6a963c3381d5 Upgrade to Gradle version 6.3.
    • cc806cc8f11277a87ec41c539bc4daced049c662 Upgrade to JavaFX version 14.
    • 48d4e84568019417ba323a4468963745217bfa7f Merge bounding box and polygon view-lists to single observable list, update tests.
    • 0268da68f9434e0d63e5a1f33f134d8eb8350108 Add polygon selected vertex deletion, update context menu with new functionality.
    • a18a9bfffe632d7dd5c097196178e47683276616 Enforce connected polygon vertex-handle selection.
    • 035ed468762f9d047e391c1142bcc9a07aad7bb1 Add additional timeout-waiting to fix failing tests in azure pipeline.
    • 426b2de1f85a87c07662439564f9a438241a1f13 Point build/test status badges to master branch, remove dev branch build artifact publishing in CI.
    • a49795851d51d2863a173937d5d450b0458ec104 Add 'dev' branch to CI branch trigger.
    • fda6b553b98052734d43ca525327efea6e400d6e Modify polygon selection and construction interaction, update tests.
    • c3b0c37abb2be8eca7dc7ed3df1efcae55a6a779 Add polygon edge-splicing functionality.
    • fcb83091c38a95c7e2d12ab358fcb3782de162f0 Add polygon to reference test annotation file.
    • 3af2f701690d2dc1dd300ce07917f2c70409809d Fix selection state synchronization bug between treeitems and bounding shapes.
    • 0cbc4bc1790e693dbd59736941280de0f67dc4fb Update in-code documentation, enforce shape naming conventions.
    • a87c9425fad3ed56c1335df556352cfca82d8cd4 Refactor common shape view members and methods.
    • dffa31b34fc44a8a408dd9633a694bb7669fc1e5 Rename classes to reflect general shape-object, use visitor pattern on data classes.
    • 31d50dae78165d72e63d62516f7d2e97b1997bf5 Add polygon-drawing, saving and loading functionality.

    This list of changes was auto generated.

    Source code(tar.gz)
    Source code(zip)
    boundingboxeditor-linux.zip(38.45 MB)
    boundingboxeditor-mac.zip(33.97 MB)
    boundingboxeditor-win.zip(35.87 MB)
  • v1.2.0(Dec 30, 2019)

    Changes:

    • d159f8f49dbbb835db354b6c39e6bfb82e00690b Add filename color-highlight for image files with assigned bounding boxes in image explorer side-panel, add tests, improve
    • 53fde1fb490497be29ee30dd0cc6e042e28a9cf1 Improve error handling during annotation file parsing, add tests for loading of annotation files with missing elements.
    • d37d0d1f3888128f967a8191eb46652646c06f78 Refactor long methods, refine tests.
    • 488614324694f7817fc2fd149ca48e41519f961b Add sonarcloud azure pipeline task.
    • e5302d40fd750edd2eb47bd3a6c8b34a22353493 Add code quality badge.
    • 91f7e849a5278b049d980d13cb33c6fbfbfd6d23 Upgrade to Gradle 6.0.1.
    • 6f53c5d0548bda24db59ce53814be1d939bd9f61 Update plugins and dependencies.
    • e4c2ae01b04a487fe2e4fd81d3476c5196f92ef5 Add sonarqube plugin, fix reported bug and some code-smells.
    • 1481952be194ffc7eb5779801acce316651b1f0f Add Xlint compiler flag, fix xlint warnings.
    • 9b048a5f72b2fec1fbd2556772191b9484f372fc Fix errorprone errors and warnings.
    See More
    • 31b627dbca843880a7ca019cc32538e612592335 Add errorprone gradle plugin.
    • 2b517656886e67af98df79c239e6c0e0ec8e3d65 Fix wrongly displayed option-dialogue after deleting all stored bounding boxes.
    • 30b725ba1f54e3cd34d75f3c52d83200dec5a548 Update Release badge.

    This list of changes was auto generated.

    Source code(tar.gz)
    Source code(zip)
    boundingboxeditor-linux.zip(38.39 MB)
    boundingboxeditor-mac.zip(33.95 MB)
    boundingboxeditor-win.zip(35.84 MB)
  • v1.1.0(Oct 12, 2019)

    Changes:

    • 5381cbf821a193205cce6e43dde5f70f78d9bb01 Add option-dialogs for keeping/saving of existing annotations when loading a new image folder or importing annotations or closing the application, refactor annotation-saver and -loader services.
    • 37028da7650cd723c4614ad94a19a561865d03af Fixed bug that allowed the deletion of a category with existing bounding boxes after a name change.
    • 18326df2a3a4fc84bb3781178dab812454146ab2 Change Jupyter notebook link to point to nbviewer.
    • 39d811c929997caac9370540f4a425556e36518e Update README.md.

    This list of changes was auto generated.

    Source code(tar.gz)
    Source code(zip)
    boundingboxeditor-linux.zip(38.27 MB)
    boundingboxeditor-mac.zip(33.90 MB)
    boundingboxeditor-win.zip(35.78 MB)
  • v1.0.1(Jul 11, 2019)

    Changes:

    • 26774ef9df1a47cbd2d84defb104962439bfc8b4 Fix bounding box per-category-count listener adding and removing, add asserts for counts in tests.
    • 0de1f3a5d56bf087d123fa19868f215c7f1e7bc0 Update README.md
    • 7486842201a44a828f6450c74d02834e79d46d70 Make keyboard-shortcut modifiers cross-platform, update tooltip labels.
    • ef31d7ab2f100e7030262ce0a1925d89ac8d89d4 Fix bug leading to exception when previous and next nav-keys are pressed at the same time, disable nav-keys while a bounding box is drawn, fix bounding box context-menu not hiding when the box is hidden or removed.
    • 6c712084b0bb8aa3b1b0fd918cefbf0152f12691 Add info on how to use the app.

    This list of changes was auto generated.

    Source code(tar.gz)
    Source code(zip)
    boundingboxeditor-linux.zip(37.95 MB)
    boundingboxeditor-mac.zip(33.74 MB)
    boundingboxeditor-win.zip(35.66 MB)
  • v1.0.0(Jul 4, 2019)

    Changes:

    • d46a50f5f479f3a5ed3af83c9cefd60a7840a385 Automatically select the dragged tree item after completion of a successful drag, add test of the selection state to BoundingBoxTreeTests.
    • 51fb603f319c0113c661f84e570816522b122ace Add image loading progress spinner, fix first/last image not loading when navigation keys are pressed
    • b52ee5e6cdd3f11a850c2024b2586f7097d6399d Update README.md
    • e2f3e4d937b99663d876e816093f933727a4df5c Update azure pipeline release trigger tag name.
    • 9bb3de9fad741b275f8d37dc6278f0b756226de9 Update README.md.
    • b922f9bd355f752e450033f6cd5282c073635ae9 Add readme content, demo-screenshot.
    • 5f7fe4788a79b446070397c2a72462a146eade1f Fix javadoc errors and warnings.
    • 07ce2296c19646579fbfae7d1d835305988c3ad5 Update Gradle version.
    • 97bbae67a34ee7b1e3a3741e510a69e5fe99e942 Refactor azure pipeline, partition into stages, add release stage with github-release task.
    • 2626952a9bd3699b00f34bb3dc291a3833990744 Update azure pipeline to publish jLink-zipped runtime images for Windows, Linux and MacOS.
    See more
    • 7fe6e8b1d500b475ed41c249f0b9414934c84611 Fix alignment and border issues in the ui, simplify build.gradle, set first version number.
    • 5d019d4ff76e607bb8261fd685f45ab871ccbefa Add code coverage plugin to gradle, add coverage report publication functionality to azure pipeline.
    • 1bc217045a24851cce263b2175ac2deab714df5c Rework controller-test assertions with timeout.
    • d873a9bdbd70c10132472cf69ce6ba8fa451c01f Add timeout-wait to controller-tests.
    • 84db721eb914cb3b2ec6f00992813d691ec2436e Merge branch 'master' of https://github.com/mfl28/BoundingBoxEditor
    • f91bcd5a8675be57f3a7a81ac5ca4ea2c32f54bf Update controller-tests javaFX application-thread waiting.
    • c2dbfbc52522253b401b382b48eb57b939ae96b2 Update azure-pipelines.yml for Azure Pipelines
    • 1fd80acd6b21df05ab5eabf74afd69f2931d2762 Merge branch 'master' of https://github.com/mfl28/BoundingBoxEditor
    • 45515621587e75959cc069009618c4822dff11f9 Set initial version number, downgrade minumum required JDK version.
    • 6789e87eb93e3e07000050ae20cf80270cfd0408 Set up CI with Azure Pipelines
    • 97bfe3e1041673b0b0832bf8de5d2d53a1f56793 Update .gitignore.
    • 00d7cdbce55852cf6b812fbb3578426c35b76629 Fix untracked files.
    • 5d0681065f082a4d67174034ea9914ef0744f9bc Add basic readme, add app_icon.svg, keep testing window on top of all windows at start of test.
    • 0c141cc9857a613a8a9f9e41a12736c53f23d5f1 Remove unused gradle plugins, apply some code cleanup.
    • 70b64f1c436048d72088b450d77b527d6d5bbdc3 Add license.
    • 8e80944f8076d3a58704f9088e0c4793a5724aa0 Add annotation import and save test, set closed hand cursor when panning the image.
    • 805648077ca21a98e864ae35ebdfe5ae757266d6 Remove redundant filename in loading error-table entries, show alert when empty annotation folder
    • b3ef060ca6bf768b32134be708abe99c6f8afd8f Make editors side-panel boxes resizeable, remove category indicator text on bounding-boxes.
    • 4dd7365a29ed264ebd790b86c750f82064045365 Add mousepoint-relative zooming and panning functionality, add zoom-reset button.
    • f939d839e00d8a9587b794a1d21d84b035363ad3 Modularize app, add jlink plugin to allow for creation of custom runtime images,
    • 7549d2baebb556c590dcdd13e0534c2bc9310c95 Update app-icon, remove unused icons, fix bounding-box fill-opacity setting when iterating
    • 8b17f8f9b9c9ee976ad1642d150f78c8c77ebe46 Add documentation, move to scss-styling and add scss-to-css generation, add more short-cuts,
    • 469cb5c638392ab0ca5a22d109e1807071163b37 Add functionality to select and use the context-menu on bounding-boxes themselves, add dynamic view-ordering of bounding-boxes,
    • a73ddedf1097686b28ea4d2a780ffdb518764588 Add annotation-loading and saving progress dialog, fix enumeration of nested-bounding-box parts in explorer,
    • a91b3678cfd5619be8f42205df68a40eaaa03ae4 Add parts-saving-functionality, implement correct updating of current bounding-boxes in model when switching images, or
    • fbc848d5c53646ea8c80e6b7022bfb8e5a0b6cd6 Add nested bounding-box parts functionality to UI (by dragging elements in the explorer-tree onto each other),
    • 9b3b271b99d915dba6c1d15004420ccb19a54b4f Move to on-demand construction of BoundingBoxViews to vastly decrease
    • 43050d553c92be41d197102dcfda9bd6c8ab41c6 Move annotation-import and bounding-box creation functionality to controller. Add selected-state property and visual highlighting to bounding-boxes.
    • db340bbfc90c399f41b29269da7c54d0381b9cdc Fix image-loading- and bounding-box-database-listener handling when switching between images.
    • b5629c907293d79856706a9956025b561d40c85b Implement strategy-pattern for annotation loading
    • 2569563b7d924d5ad010ef1b4f6b0f6d2517fd10 Implement working annotation-import functionality, rework loading of bounding-boxes,
    • d74b7f8b4bb4b8203f75ed35fe7f17ac20c83f8c Rework program structure, add full category delete functionality, add image settings button and functionality, add classes for image-annotation importing functionality
    • aad6536c04617a12c4a57d670992fc15838fbbca Divide source files into packages
    • f5781a76fda197cd783cbd518edc2e4eca51cc25 Refactor Utils class, fix non-resizing image on window size change
    • 116e8d965475439128b1748c4f595e1f5dafa685 Merge left-center-right components of borderpane into a single splitpane with two dividers, add package for ui components, add basic checkbox functionality for explorer tree icons (intermediate state (some but not all children toggled on) is not implemented)
    • e5436b75c11c4d438ff5e83229eb97cb52eb7030 Align side-panels, move navigation bar into separate image shower border pane in the center of the main border pane, correctly set panel visibility property for panels when no image folder is loaded
    • 1d278316586b6f8f06f0a99ca142ebbc38349c77 Upgrade gradle version, add 'spotfind' static analysis tool as gradle plugin,
    • fbdc6ba53f50a7b4c60340bd794d83b2f803a23a Add image-explorer side panel and image selection functionality, fix bugs in tree-view listeners when tree-view reuses cells, add basis for image annotation loading functionality
    • 7530d9fb6a4a6f9855db3ca0dc99d997df3e435f Add full save functionality on background thread, add label indicating current file index, fix next/previous button-click interaction with image background-loading
    • 872579290bc7b84688b7cd98d92d9832161e9977 Make side-pane invisible when no folder is loaded, add bounding-box visibility toggle to explorer tree
    • c2cd9fb2d3fe3dc85f29ad7f85981f4f959c3122 Refactor image pane and status pane
    • ef6eeb8e6e597fd60df65355362aa8c535d5dc43 Refactor side panel
    • b4ea63249790bb4a80be649e41e89951a18c6e4b Add TestFX UI Tests and resources, refactor menubar and navigationbar from main view class, add View Interface
    • e5f1e077318864adb41dc2e75f4d8f6b164bb37f Convert to Gradle Project, upgrade to Java JDK 11, add first Junit 5 test
    • 938f83a2d18c8fdb3ba20329605fbc5cb229004e Prepare for move to Gradle, move files, update .gitignore
    • b42359473be8ef0ddf4a7644cf9716a3119fde41 Add saveing-functionality classes and interfaces
    • 5d79393f09e28cd9230c139a2c3a01c5253daede Add search-field for category which can be triggered on CTRL-F
    • 41fe681d077c50e30aa4c5e8661f78e721c2b52e Add custom TreeCell and TreeItem for Bounding Box Explorer, add delete Bounding Box functionality
    • 39c83b3575056ce9b4d117aed441a9961a2f2d2c Add scroll to selected functionality for bounding box categories, add equals method to category class
    • 023956d55e600525102feeb2c2c7bc205e692fe3 Add uniqueness requirement to bounding box categories, add basic text validation to add button
    • f96835c5983b4b6ee938c97b6560c385c70cf630 Add treeview base functionality and styling, add program title, fixed color to rgba conversion
    • de5afcd0b21cbd4939143c2de67fa3d154fec164 Add treeview element, tidy up css-styling
    • 823f367d6261f255d1349e8e13e0a354ebd68a2d Refactor all classes, fix some stylesheet settings
    • 69f51c6a7c2e11d5517c2f5e192e9ba31257c85f Implement basic BoundingBox Type TableView, finish resizable rectangle interactions
    • 285a4bcfdb2952a13b63ee5dd9cc04577b0aac13 Add Test.java to .gitignore, add BoundingBoxItem class
    • e29881ed24b04cc7838768672613d6cc59b3e35b Add settings sidepane and boundingbox saving functionality
    • 19450b8b9d62e69aedf2e374245fdfa70446348e Refactor setting of listeners in Controller and View classes, add basics of Save feature and Zooming on scrolling the StackPane

    This list of changes was auto generated.

    Source code(tar.gz)
    Source code(zip)
    boundingboxeditor-linux.zip(37.95 MB)
    boundingboxeditor-mac.zip(33.74 MB)
    boundingboxeditor-win.zip(35.66 MB)
Owner
Markus Fleischhacker
Mathematician | Software Engineering, Machine Learning and Music Enthusiast
Markus Fleischhacker
FXDesktopSearch - a Java and JavaFX based Desktop Search Application

FXDesktopSearch - The free search application for your desktop FXDesktopSearch is a Java and JavaFX based Desktop Search Application. It crawls a conf

Mirko Sertic 162 Oct 14, 2022
Desktop/Mobile JavaFX application framework

Basilisk is desktop/mobile application development platform for the JVM. Inspired by Griffon, Basilisk leverages JavaFX and JavafXPorts to bring the s

Basilisk 55 Feb 10, 2022
It is a desktop application based on JavaFX to implement a Carmeter-GPS.

CarMeter_JavaFX It is a desktop application based on JavaFX to implement a Carmeter-GPS. Video View more Details about the project.---> Link to Video

Abdullah HAnfy 0 Nov 29, 2022
Java Desktop (JavaFX and Swing) Component Inspector

Java Desktop (JavaFX and Swing) Component Inspector A Tool for help you to inspect the location and properties of certain components in a window hiera

TangoraBox 21 Oct 28, 2022
null 4 Oct 21, 2022
Tray Icon implementation for JavaFX applications. Say goodbye to using AWT's SystemTray icon, instead use a JavaFX Tray Icon.

FXTrayIcon Library intended for use in JavaFX applications that makes adding a System Tray icon easier. The FXTrayIcon class handles all the messy AWT

Dustin Redmond 248 Dec 30, 2022
🌄 Image editor using native modules for iOS and Android. Inherit from 2 available libraries, Brightroom (iOS) and PhotoEditor (Android)

React Native Photo Editor (RNPE) ?? Image editor using native modules for iOS and Android. Inherit from 2 available libraries, Brightroom (iOS) and Ph

Baron Ha. 243 Jan 4, 2023
Flash cards app using JavaFX, Scene Builder and persistence using Serialization with JAVA IO API

Flashcards - JavaFX , Scene Builder, Serialized Persistence JAVA IO API Main Scene that will show all the Decks in Flash Card App Add or Edit Cards in

Ali Raja 3 Nov 28, 2022
A hotel management system desktop application, built with java SWT/Swing

A hotel management system desktop application, built with java SWT/Swing, with tabs to manage bookings, rooms, customers, payments, cancellations, hotel inventory orders, catering and a plan to visualize all the reservations for the month.

null 1 Jan 12, 2022
A core java-based desktop application that can secretly track users' activities, record screenshots and keys typed by the user

@Abhishek Tandon @Manoj Kumar Dewangan @Ritesh Barik Introduction This project is a core java-based desktop application that can secretly track users'

Vaibhav Biturwar 0 Apr 2, 2022
Tetromino is a Tetris-like game written in Java with JavaFX.

Tetromino Link to original project in university's GitLab Tetromino is a Tetris-like game written in Java with JavaFX made by Jonas and myself during

Tobias Helmrich 2 Dec 13, 2021
A portable 8086 emulator written in Java and JavaFX

8086.java A portable 8086 emulator written in JavaFX Environment Variables To run this project, you will need to add the following environment variabl

David Velho 4 Dec 1, 2022
A cross-platform interface for FutureRestore, written in Java with Swing

Futurerestore GUI A GUI implementation for FutureRestore written in Java. Installation Download from releases. No Java download required (it's bundled

null 428 Dec 30, 2022
A desktop application designed to serve the co-curricular uses of students, clubs and forums, and admins of United International University.

ECA Management System Made by "Team Apocalypse": S M Jishanul Islam Sadia Ahmmed Sahid Hossain Mustakim Description A desktop application designed to

S M Jishanul Islam 2 Jan 31, 2022
The Thinkerâ„¢ desktop application

The Thinkerâ„¢ desktop application The Thinker is a math simulator instrument to perform visual examination of numerous computational processes running

Nikolai Varankine 2 May 11, 2022
Android Resource Manager application to manage and analysis your app resources with many features like image resize, Color, Dimens and code Analysis

AndroidResourceManager Cross-Platform tools to manage your resources as an Android Developer, AndroidResourceManager - ARM provide five main services

Amr Hesham 26 Nov 16, 2022
JDKMon - A little tool written in JavaFX that monitors your installed JDK's and inform you about updates

JDKMon JDKMon Home JDKMon is a little tool written in JavaFX that tries to detect all JDK's installed on your machine and will inform you about new up

Gerrit Grunwald 246 Jan 3, 2023
Everest - an upcoming REST API testing client written in JavaFX

Everest (formerly RESTaurant) is an upcoming REST API testing client written in JavaFX. Everest running on Windows 10. Why Everest? Everest is written

Rohit Awate 810 Dec 27, 2022
A prayer times (Adhan) app for Windows and GNU/Linux written in JavaFX.

Salawat Salawat - سالوات A prayer times and Adhan application for Windows, macOS and GNU/Linux written in Java Download » View Demo · Report Bug · Req

DarkBlackChocolate 8 Nov 17, 2022