Polycode - finally


For those who are interested. At long last the Beta has arrived.


"Polycode is a C++ and Lua framework for building interactive applications. It is free, open source and cross-platform.

Polycode’s core is written in C++ and currently runs on Mac, Windows and Linux with iOS and Android support planned in the future. All platform-specific functionality is abstracted into a cross-platform core and implemented natively on each platform, so the same C++ code will compile on each supported platform out of the box.

          Polycode can also be used as a purely scripted Lua framework via  the Polycode IDE. Applications developed in Lua can be exported directly  to all supported platforms.

Polycode is completely free and open source under the MIT License. All of Polycode’s development happens publicly on Github and community pull requests are regularly reviewed.


Currently I’m gathering any related info into the most efficient rout for self teaching myself C++ and this OSS framework looks promising, so might be worth a further in-depth look, anyways thanks for the share.

Cheers :wink:


looks cool, I have a couple of questions.

  1. Why did you choose Lua as a scripting language over python?
  2. I see you have Linux 32 bit available, any plans for a Linux 64 bit build?


…sadly I’m not the developer. Just a bearer of tidings.

That said, I do agree with the choice of Lua. Love it. Started using it on an IOS project. Then picked up Corona SDK and been using it ever since. :thumbsup:


LUA is a pretty important standard in the game plugins world, and its somewhat particular nature also contributes to it interpreting and executing at blazing fast speeds (for a non statically compiled language) and allows for very strong security gating easily.

A lot of MMO game APIs and server side technologies out there use it for those reasons. WoW, WIldStar, Apache Traffic etc.


I recently have been looking into a few alternatives for embedding a scripting language into c++, I’ll probably end up going with boost.python unless there are compelling reasons otherwise.

Are there any even higher level packages than Qt for interface development? I am specifically looking for something to build a time line editor and perhaps a node graph editor. Would I need to “roll my own”, or does anyone know of an api that I could make use of to speed up the process?


It’s not entirely clear what you’re asking…
I assume with embed you mean offering bindings for an interpreted language to a C++ backend or API, since embedding into C++ would mean something else (and it’s not really the done thing other than for ASM).

You have to pick based on your necessities and your target audience, your target audience potentially being just you :slight_smile:
Python is a fine language, and Boost bindings are good, but if it’s on the UI front that you intend to do most of the fronting, then Qt + SIP is probably going to be a smoother experience. SIP is good in general in fact, even if you don’t intend to limit yourself to what’s in Qt.

Other options are SWIG if you want something more limited but somewhat more automated, but I would probably go for SIP of Boost bindings unless you have a vast set of libraries with SWIG friendly headers to work on.

As for looking for implementations of a timeline and so on, well, you need a time engine behind it in first place, the UI is the easiest bit, but sure, you can look at something like Blender for fully functional and complex examples, or any of many OSS software that have one. There are plenty between video editing and audio that have all kind of flavours of time control.

This is OT for this thread though, so I’m not going to continue that here.