{"id":13777044,"url":"https://github.com/kordamp/bootstrapfx","last_synced_at":"2025-04-08T04:13:49.562Z","repository":{"id":38839957,"uuid":"42141501","full_name":"kordamp/bootstrapfx","owner":"kordamp","description":"BootstrapFX: Bootstrap for JavaFX","archived":false,"fork":false,"pushed_at":"2021-05-06T21:43:19.000Z","size":866,"stargazers_count":973,"open_issues_count":11,"forks_count":141,"subscribers_count":52,"default_branch":"master","last_synced_at":"2024-12-21T10:02:53.601Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kordamp.png","metadata":{"files":{"readme":"README.adoc","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null},"funding":{"patreon":"aalmiray","github":"aalmiray"}},"created_at":"2015-09-08T22:04:56.000Z","updated_at":"2024-12-20T02:49:52.000Z","dependencies_parsed_at":"2022-08-09T15:42:14.563Z","dependency_job_id":null,"html_url":"https://github.com/kordamp/bootstrapfx","commit_stats":null,"previous_names":["aalmiray/bootstrapfx"],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kordamp%2Fbootstrapfx","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kordamp%2Fbootstrapfx/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kordamp%2Fbootstrapfx/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kordamp%2Fbootstrapfx/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kordamp","download_url":"https://codeload.github.com/kordamp/bootstrapfx/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247773719,"owners_count":20993639,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-03T18:00:36.796Z","updated_at":"2025-04-08T04:13:49.543Z","avatar_url":"https://github.com/kordamp.png","language":"Java","funding_links":["https://patreon.com/aalmiray","https://github.com/sponsors/aalmiray"],"categories":["Java","Libraries, Tools and Projects"],"sub_categories":[],"readme":"= BootstrapFX\n:linkattrs:\n:project-owner:   kordamp\n:project-repo:    maven\n:project-name:    bootstrapfx\n:project-group:   org.kordamp.bootstrapfx\n:project-version: 0.4.0\n\nimage:https://img.shields.io/github/workflow/status/{project-owner}/{project-name}/EarlyAccess?logo=github[\"Build Status\", link=\"https://github.com/{project-owner}/{project-name}/actions\"]\nimage:https://img.shields.io/maven-central/v/{project-group}/{project-name}-core.svg[link=\"https://search.maven.org/#search|ga|1|{project-group}\"]\n\n---\n\nBootstrapFX is a partial port of link:http://getbootstrap.com/[Twitter Bootstrap] for JavaFX. It mainly provides a CSS\nstylesheet that closely resembles the original while being custom tailored for JavaFX's unique CSS flavor.\n\nIt's worth mentioning that Twitter Bootstrap delivers more than just a standardized look for common widgets. It also\nprovides new widgets, behavior and a grid system. Some of these features may be ported at a later stage to BootstrapFX.\n\n== Installing\n\nYou can get the latest version of **BootstrapFX** from Maven Central.\n\n[source,groovy]\n[subs=\"attributes\"]\n.gradle\n----\nrepositories {\n    mavenCentral()\n}\n\ndependencies {\n    implementation '{project-group}:{project-name}-core:{project-version}'\n}\n----\n\n[source,xml]\n[subs=\"attributes,verbatim\"]\n.maven\n----\n\u003cdependencies\u003e\n    \u003cdependency\u003e\n        \u003cgroupId\u003e{project-group}\u003c/groupId\u003e\n        \u003cartifactId\u003e{project-name}-core\u003c/artifactId\u003e\n        \u003cversion\u003e{project-version}\u003c/version\u003e\n    \u003c/dependency\u003e\n\u003c/dependencies\u003e\n----\n\nOnce the `bootstrapfx-core` dependency is in your classpath you just need to apply the `boostrapfx.css` stylesheet to\na scene, for example\n\n[source,java]\n----\nimport javafx.application.Application;\nimport javafx.geometry.Insets;\nimport javafx.scene.Node;\nimport javafx.scene.Scene;\nimport javafx.scene.control.Button;\nimport javafx.scene.layout.BorderPane;\nimport javafx.stage.Stage;\nimport org.kordamp.bootstrapfx.BootstrapFX;\nimport org.kordamp.bootstrapfx.scene.layout.Panel;\n\npublic class Sampler extends Application {\n    @Override\n    public void start(Stage primaryStage) throws Exception {                   //\u003c1\u003e\n        Panel panel = new Panel(\"This is the title\");\n        panel.getStyleClass().add(\"panel-primary\");                            //\u003c2\u003e\n        BorderPane content = new BorderPane();\n        content.setPadding(new Insets(20));\n        Button button = new Button(\"Hello BootstrapFX\");\n        button.getStyleClass().setAll(\"btn\",\"btn-danger\");                     //\u003c2\u003e\n        content.setCenter(button);\n        panel.setBody(content);\n\n        Scene scene = new Scene(panel);\n        scene.getStylesheets().add(BootstrapFX.bootstrapFXStylesheet());       //\u003c3\u003e\n\n        primaryStage.setTitle(\"BootstrapFX\");\n        primaryStage.setScene(scene);\n        primaryStage.sizeToScene();\n        primaryStage.show();\n    }\n}\n----\n\u003c1\u003e Custom widget from BootstrapFX\n\u003c2\u003e Apply CSS class to widgets\n\u003c3\u003e Apply BootstrapFX stylesheet to scene\n\n== Building\n\nYou must meet the following requirements:\n\n * JDK11 as a minimum\n * Gradle 6.8.3\n\nYou may used the included gradle wrapper script if you don't have `gradle` installed.\n\n=== Installing Gradle\n\n.Manual\n\n . Download Gradle from http://gradle.org/downloads\n . Unzip the file into a directory without spaces (recommended).\n . Create a GRADLE_HOME environment variable that points to this directory.\n . Adjust your PATH environment variable to include $GRADLE_HOME/bin (%GRADLE_HOME%\\bin on Windows).\n . Test your setup by invoking `gradle --version`.\n\n.SDKMAN\n\n . Follow the instructions found at http://sdkman.io/ to install SDKMAN.\n . You need a POSIX environment if running Windows. We recommend using Babun Shell (http://babun.github.io/)\n . Once SDKMAN is installed invoke `sdk install gradle 6.8.3`.\n . Test your setup by invoking `gradle --version`.\n\n.Gum\n\nGum is a wrapper script that facilitates invoking gradle tasks anywhere within a Gradle project. It's smart enough\nto use the gradle wrapper if available or your global gradle command. This is an optional download.\n\n . Follow the instructions found at https://github.com/kordamp/gm to install gum\n\n=== Next Steps\n\nMake a full build by invoking the following command\n[source]\n----\n$ gm build\n----\n\nRun the sampler application by invoking the following command\n[source]\n----\n$ gm :sampler:run\n----\n\n== Supported CSS Classes\n\n=== Text\n\n * b, strong\n * i, em, italic, dfn\n * small\n * code, kbd, pre, samp\n * h1, h2, h3, h4, h5, h6\n * lead\n * p\n * text-mute\n * text-primary, text-success, text-info, text-warning, text-danger\n * bg-primary, bg-success, bg-info, bg-warning, bg-danger\n\n=== Buttons\n\n * btn\n * btn-default, btn-primary, btn-success, btn-info, btn-warning, btn-danger\n * btn-lg, btn-sm, btn-xs\n\n=== SplitMenu Buttons\n\n * split-menu-btn\n * split-menu-btn-default, split-menu-btn-primary, split-menu-btn-success, split-menu-btn-info, split-menu-btn-warning, split-menu-btn-danger\n * split-menu-btn-lg, split-menu-btn-sm, split-menu-btn-xs\n\n=== Labels\n\n * lbl\n * lbl-default, lbl-primary, lbl-success, lbl-info, lbl-warning, lbl-danger\n\n=== Panels\n\n * panel\n * panel-default, panel-primary, panel-success, panel-info, panel-warning, panel-danger\n * panel-heading\n * panel-title\n * panel-body\n * panel-footer\n\n=== Alerts\n\n * alert\n * alert-success, alert-info, alert-warning, alert-danger\n\n=== Groups\n\n * btn-group-horizontal\n * btn-group-vertical\n\n*NOTE:* all elements inside the vertical button group must have the same width.\n\n=== Progress Bars\n\n * progress-bar-primary\n * progress-bar-success\n * progress-bar-info\n * progress-bar-warning\n * progress-bar-danger\n\n=== Tooltips\n\n * tooltip-primary\n * tooltip-success\n * tooltip-info\n * tooltip-warning\n * tooltip-danger\n\n=== Miscellaneous\n\n * badge\n\n== Screenshots\n\nimage::images/buttons.png[]\n\nimage::images/labels.png[]\n\nimage::images/alerts.png[]\n\nimage::images/panels.png[]\n\nimage::images/splitmenu-buttons.png[]\n\n== Changelog\n\n.0.4.0\n\n * Full modular build.\n * JDK 11 is now the minimum requirement.\n\n.0.3.0\n\n * The build was updated to use a different SASS plugin.\n\n.0.2.4\n\n * The `bootstrapfx.css` file has been moved to `org/kordamp/bootstrapfx/bootstrapfx.css`.\n\n.0.2.3\n\n * Added `progress-bar` variants\n * Added `tooltip` variants\n * Tweaked menu items and menus\n\n.0.2.2\n\n * Add `Automatic-Module-Name` to JAR manifest\n\n.0.2.1\n\n * POM updates\n\n.0.2.0\n\n * SplitMenu Button support\n * Button group support\n * `lead` on Text\n\n.0.1.0\n\n * First release\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkordamp%2Fbootstrapfx","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkordamp%2Fbootstrapfx","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkordamp%2Fbootstrapfx/lists"}