A foundational Haxe framework for cross-platform development
Latest commit 56a6ec0 Dec 7, 2018
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci Move website to seperate repository Aug 9, 2018
.vscode Improve code completion while working on library Aug 6, 2018
assets/docs-theme Update API doc favicon Jul 10, 2018
dependencies Patch howler.js for IE11 Sep 27, 2018
docs Add source-path to dox generated documentation Aug 9, 2018
externs/air Add stubs for AIR sys API support Jul 10, 2018
ndll Remove legacy libraries Jun 28, 2017
project Update OpenAL Dec 3, 2018
src Minor fix Dec 7, 2018
templates Use electron.main.App.commandLine type Nov 24, 2018
tests/runtime Update window close behavior May 14, 2016
tools Add WinRT 64-bit support to tools Nov 27, 2018
.dockerignore Initial work on Dockerfile Sep 29, 2017
.gitattributes Merge Aether tools Oct 1, 2014
.gitignore Move website to seperate repository Aug 9, 2018
.gitmodules Remove axtls Jul 19, 2018
CHANGELOG.md Update CHANGELOG Dec 4, 2018
CONTRIBUTING.md Update README, add CONTRIBUTING and LICENSE Dec 31, 2013
Dockerfile Reduce size of image Sep 30, 2017
LICENSE.md Update LICENSE.md Jan 1, 2018
NOTICE.md Update NOTICE Sep 25, 2018
README.md Update README.md Nov 14, 2017
extraParams.hxml Refactor API for clarity and future changes Jul 5, 2018
haxelib.json Update to 7.2.0 Dec 3, 2018
haxelib.xml Add dummy haxelib.xml Oct 18, 2014
include.xml Minor fix Oct 12, 2018
lime.png Add lime.png Aug 13, 2014
package.json Minor fix Dec 29, 2017
run.n Fix command-line tools Jul 5, 2018
svg.n Update SVG tool Aug 8, 2018

README.md

MIT License Haxelib Version Build Status

Lime

Lime is a flexible, lightweight layer for Haxe cross-platform developers.

Lime supports native, Flash and HTML5 targets with unified support for:

  • Windowing
  • Input
  • Events
  • Audio
  • Render contexts
  • Network access
  • Assets

Lime does not include a renderer, but exposes the current context:

  • Cairo
  • Canvas
  • DOM
  • Flash
  • GL

The GL context is based upon the WebGL standard, implemented for both OpenGL and OpenGL ES as needed.

Lime provides a unified audio API, but also provides access to OpenAL for advanced audio on native targets.

License

Lime is free, open-source software under the MIT license.

Installation

First install the latest version of Haxe.

The current version of Lime has not been released on haxelib, yet, so please install the latest development build.

Development Builds

When there are changes, Lime is built nightly. Builds are available for download here.

To install a development build, use the "haxelib local" command:

haxelib local filename.zip

Building from Source

Clone the Lime repository, as well as the submodules:

git clone --recursive https://github.com/openfl/lime

Tell haxelib where your development copy of Lime is installed:

haxelib dev lime lime

The first time you run the "lime" command, it will attempt to build the Lime standard binary for your desktop platform as the command-line tools. To build these manually, use the following command (using "mac" or "linux" if appropriate):

haxelib install format
lime rebuild windows

You can build additional binaries, or rebuild binaries after making changes, using "lime rebuild":

lime rebuild windows
lime rebuild linux -64 -release -clean

You can also rebuild the tools if you make changes to them:

lime rebuild tools

On a Windows machine, you should have Microsoft Visual Studio C++ (Express is just fine) installed. You will need Xcode on a Mac. To build on a Linux machine, you may need the following packages (or similar):

sudo apt-get install libgl1-mesa-dev libglu1-mesa-dev g++ g++-multilib gcc-multilib libasound2-dev libx11-dev libxext-dev libxi-dev libxrandr-dev libxinerama-dev

To switch away from a source build, use:

haxelib dev lime

Sample

You can build a sample Lime project with the following commands:

lime create HelloWorld
cd HelloWorld
lime test neko

You can also list other projects that are available using "lime create".

Targets

Lime currently supports the following targets:

lime test windows
lime test mac
lime test linux
lime test neko
lime test android
lime test ios
lime test html5
lime test flash
lime test air

Desktop builds are currently designed to be built on the same host OS