Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/deflatedpickle/haruhi
A plugin framework
https://github.com/deflatedpickle/haruhi
config java kotlin plugin swing
Last synced: about 1 month ago
JSON representation
A plugin framework
- Host: GitHub
- URL: https://github.com/deflatedpickle/haruhi
- Owner: DeflatedPickle
- License: mit
- Created: 2020-07-26T20:14:21.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2023-08-19T04:00:56.000Z (over 1 year ago)
- Last Synced: 2024-03-18T07:01:19.774Z (10 months ago)
- Topics: config, java, kotlin, plugin, swing
- Language: Kotlin
- Homepage: https://jitpack.io/#DeflatedPickle/haruhi
- Size: 174 KB
- Stars: 4
- Watchers: 3
- Forks: 0
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# haruhi
A plugin framework for Swing, with a focus on dockable components, configuration and an events system## Examples
Currently, the most developed example using `haruhi` is the second version of [Quiver](https://github.com/DeflatedPickle/Quiver), which started originally as nothing more than a second project to make sure I didn't make `haruhi` fit for only a single program. The first program being the [Rawky](https://github.com/DeflatedPickle/Rawky) rewrite, which has ironically almost been forgotten, dispite being the project to spawn it. There is also the [sniffle](https://github.com/DeflatedPickle/sniffle) project, providing common and universal plugins. This repository also contains [a barebones example of a few plugins and a launcher](https://github.com/DeflatedPickle/haruhi/blob/master/example/src/main/kotlin/main.kt), though it isn't very exciting## Documentation
Though `haruhi` doesn't have it's own documentation yet, [the wiki for Rawky](https://github.com/DeflatedPickle/Rawky/wiki/Custom-Plugin) can be followed quite closely, with only the imports changing a bit (mostly to rename references of `rawky` to `haruhi`), and the lauchers [from Quiver](https://github.com/DeflatedPickle/Quiver/blob/rewrite/launcher/src/main/kotlin/com/deflatedpickle/quiver/launcher/main.kt) and [from Rawky](https://github.com/DeflatedPickle/Rawky/blob/rewrite/launcher/src/main/kotlin/com/deflatedpickle/rawky/launcher/main.kt) can be used as reference for starting up everything that `haruhi` needs## History
`haruhi` started life, not as it's own project but as a part of the rewrite of [Rawky](https://github.com/DeflatedPickle/Rawky). After writing so much for it, I decided that it would be useful for any other Swing programs I, or anyone else, happened to write in future. Mostly because plugins could be shared between programs that used `haruhi` (so long as guidelines where followed), meaning I could end the battle of writing another way to change Swing settings. Though the learning process had a lot more to it, which I consider to be shards of an earlier `haruhi`. The closest being the docking and config system from the original Rawky, though an earlier, rougher plugin and config system existed for [FAOSDance](https://github.com/DeflatedPickle/FAOSDance) that used [JRuby](https://www.jruby.org/) for plugin scripting and [TOML](https://toml.io/en/) for configuration files, but before that was [Wheeze](https://github.com/DeflatedPickle/Wheeze) that used NetRexx to provide scriptable brushes