Skip to content

Mirror of Nim programming language binding for Nuklear GUI library

License

Notifications You must be signed in to change notification settings

thindil/nuklearnim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

59 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NuklearNim is Nim binding for Nuklear GUI library. At the moment it is in the alpha stage and generally, it is a WYSIWYG (or DIY) type of the project. ;)

I created the project because I needed a GUI library for my other projects in Nim. It is more like backup than a real project. I will occasionally update the binding as I will work more with it in other cases. For this reason I don't accept any bug reports or requests for features. Not until stable stage 3 of the project (for roadmap, please look below).

If you read this file on GitHub: please don't send pull requests here. All will be automatically closed. Any code propositions should go to the Fossil repository.

Roadmap

  • Stage 3: Rewrite everything in Nim. The current stage, started.

Usage

To use it in your project, you will need files:

  • nuklear.h - Nuklear library itself
  • nuklear.nim - Nim main binding file to the Nuklear library.
  • nk_*.nim - Nim submodules, for various Nuklear UI elements.
  • nuklear_xxx.h - the selected backend for Nuklear library. For example, nuklear_sdl_renderer.h
  • nuklear_xxx.nim - Nim binding for the selected backed. In the same example, it will be nuklear_sdl_renderer.nim.

You will need also to set the proper flags for C compiler, so it will be able to find the library.

In your project, always import binding to the backed, not to the library itself. For example, import nuklear_sdl_renderer.

Demo

To build the demo, enter demo directory and run build.nims script. You will need to set paths in config.nims file too. To see all available backends, just run build.nims without any argument. For example, to build the demo with Xlib backend, type ./build.nims sdl2.

Documentation

At the moment only in form of the code, in demo directory plus comments in nuklear.h and nuklear.nim files. Don't expect anything better soon(TM). ;)

License

The project released under 3-Clause BSD license. The original Nuklear library code is released under Public Domain/MIT license (at your option).


Bartek thindil Jasicki