Package: smartwheel-core
A powerful keyboard knob controller with GUIWhy do I need it?The main problem with keyboard encoders and standalone dials is that there aren't many features out of the box, butthey can be much, much more powerful than they are right now. Have you seen those techy gadgets from Hollywood blockbusters that hackers use (like Q's fancy joystick from latest 007)? Smartwheel gives you the same functionality, but adapted for day-to-day use.Smartwheel is written in Python/PyQt6, so it could be easily modded with custom plugins. There aren't many right now, but this project is in constant development - there will be more soon.FeaturesUniversal keyboards/dials supportSmartwheel will work with any knob - no support from the vendor requiredA wide range of addonsThere will be a wide range of plugins: from Krita/PS integrations to small quality-of-life imporvementsThemingSmartwheel is fully customizable (you can even create any keybinds if you want)InstallationYou may install the prebuilt stable version from the releases.Development buildMake sure that Python 3 is installedStable versionpip3 install smartwheel-coreFrom Githubgit clone https://github.com/enaix/smartwheel-core.gitcd smartwheel-corepip3 install .CompilationNuitka now supports only Python <= 3.11./build.sh,.\build.bator./build_macos.shTo create macos dmg file run./package_macos_dmg.shWe need your help!I've started working on this project a while ago, but it turned out that it's too big: it won't be possible to finish it without your help. However, it's much easier to implement features one-by-one: you only need basic Python3 (and sometimes PyQt6) knowledge. If you believe in this project and want to contribute, please DM me. Even small fixes, ideas or suggestions are very important.Discord:server linkDocumentationDocs are available at readthedocs:https://smartwheel-core.readthedocs.io/en/latest/Release 1.0.0Stable version (Linux)Documentation (in progress)Examples (in progress)Initial encoders support (Linux)Refactor apiMove to PyQt6Add colorable iconsAdd modules background processesAdd proper API packageRewrite actionengine with pulses & accelerationRewrite serial input with new apiAdd key combosFinish folders supportSettings menu (in progress)Basic stuffCustom handlers support (Almost)SavingTheme presetsAdd color pickerActions editorSections editorAdd unified input editor (new input api)Better overlays editor (?)Modules import (.zip) (?)Wheel hidingHide after timeoutHide after losing window focusPackagingConfigure setup.pyAdd update featureHire core doctor!Windows support(Platform) Replace AF_UNIX socket with network socketAdd proper media fetchingMac supportAdd CI buildsFix keypresses simulationAdd permission requestsFeatures progressBase structure (Plugins manager)Action engineKeyboard bindingsSerial encoder integration (Partial)UX Features (acceleration)Keyboard knobs support (Almost)Settings editor (Partial)Custom plugins (from JSON)Folders support (Partial)Wheel UIAddonsMediaColor pickerScrollFiles (Initial)RotateTimelineMIDI device (with multiple encoders)Other ...Krita integration (Partial)ColorCanvas rotate/scaleBrush...Photoshop integration (?)DIY knobIf you don't have a standalone dial, you may 3D print one!smartwheel padGalleryShort video (sorry for the poor quality):Update: added UI overlaysResourcesIonicons icon sethttps://github.com/ionic-team/ionicons