Wiish (Why Is It So Hard) GUI framework might one day make it easy to develop, package and deploy auto-updating, cross-platform applications for desktop and mobile. If it succeeds, maybe the name will have to change :)
Wiish is currently ALPHA quality software. Don't make anything with it unless you're willing to rewrite it when this package changes.
Install Nim and
nimble install https://github.com/iffy/wiish.git
Install other dependencies:
- Android SDK and Android NDK for Android apps
apt-get install libsdl2-dev libsdl2-ttf-dev libgtk-3-dev libwebkit2gtk-4.0-dev
- macOS: no other deps
- Windows: no other deps (maybe?)
Create a project and run it:
wiish init somedir cd somedir wiish run
wiish --help for how to build executables and apps. For example:
wiish run --ios wiish run --android wiish build wiish init --base-template opengl my_opengl_app
Wiish provides 2 main things:
wiish- A command line tool for running, building and packaging apps.
wiishpkg- A Nim library for making apps. This is further divided into:
wiishpkg/webview_desktop- Library for making Webview-based desktop apps.
wiishpkg/webview_mobile- Library for making Webview-based mobile apps.
wiishpkg/sdlapp- Library for making SDL and/or OpenGL apps (both desktop and mobile).
The GUI component is designed to work separately from other features (e.g. auto-updating, packaging, etc...) so that different GUI libraries can be swapped in/out.
Here is what's currently supported:
|Log to file||Y|
|Log to console w/ run||Y||Y||Y||Y|
Y = complete, - = not applicable
examples directory for more examples of how to use this library. You can also initialize a project using these examples with
wiish init. See
wiish init --help for information.
See CONTRIBUTING.md for information about contributing to Wiish development.