{"id":13528797,"url":"https://github.com/haxegon/haxegon","last_synced_at":"2025-04-01T14:33:06.922Z","repository":{"id":32725753,"uuid":"36315594","full_name":"haxegon/haxegon","owner":"haxegon","description":"A haxe programming library for beginners. Powered by OpenFL and Starling.","archived":false,"fork":false,"pushed_at":"2022-10-12T18:49:02.000Z","size":14179,"stargazers_count":193,"open_issues_count":78,"forks_count":16,"subscribers_count":19,"default_branch":"master","last_synced_at":"2025-03-28T20:38:59.016Z","etag":null,"topics":["framework","game","haxe","html5","linux","mac","openfl","starling","windows"],"latest_commit_sha":null,"homepage":"http://www.haxegon.com","language":"Haxe","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/haxegon.png","metadata":{"files":{"readme":"readme.MD","changelog":"changelog.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-05-26T18:28:55.000Z","updated_at":"2025-01-04T17:27:40.000Z","dependencies_parsed_at":"2023-01-14T22:02:56.674Z","dependency_job_id":null,"html_url":"https://github.com/haxegon/haxegon","commit_stats":null,"previous_names":[],"tags_count":18,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haxegon%2Fhaxegon","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haxegon%2Fhaxegon/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haxegon%2Fhaxegon/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haxegon%2Fhaxegon/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/haxegon","download_url":"https://codeload.github.com/haxegon/haxegon/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246655272,"owners_count":20812609,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["framework","game","haxe","html5","linux","mac","openfl","starling","windows"],"created_at":"2024-08-01T07:00:24.865Z","updated_at":"2025-04-01T14:33:05.256Z","avatar_url":"https://github.com/haxegon.png","language":"Haxe","funding_links":[],"categories":["Game engines"],"sub_categories":[],"readme":"A quick, overdue note about the current status of Haxegon:\n\nI started creating Haxegon to provide a beginner friendly and powerful game prototyping library to new programmers, but I haven't had the time needed to put into making that a reality. Haxegon, in it's current state, is basically just a personal framework that I can't really recommend to new programmers, and this is unlikely to change for the foreseeable future.\n\nIf you're looking for ways to get started programming that have a similar vibe to what I wanted Haxegon to be, then I can recommend looking into the following projects:\n\n*Free:*\n\n[LÖVE](https://love2d.org/) - A free 2D game engine based on Lua.\n\n[openFrameworks](https://openframeworks.cc/) - A collection of C++ libraries aimed at visual artists, billed as a \"toolkit for creative coding\". A major inspiration for Haxegon, and was used in the creation of Super Hexagon.\n\n[HaxeFlixel](https://haxeflixel.com/) - An excellent, widely used 2D game engine, powered by Haxe!\n\n[Godot](https://godotengine.org/) - A free and open source game engine, rivaling the power of engines like Unity.\n\n*Commercial:*\n\n[Pico8](https://www.lexaloffle.com/pico-8.php) - An 8-bit fantasy console with an excellent HTML5 exporter. Lua based.\n\n[GameMaker](https://www.yoyogames.com/gamemaker) - This classic game making tool is still one of the best game making toolkits around. Used for the creation of several high profile indie hits, including Hyper Light Drifter, Hotline Miami and Nuclear Throne.\n\nOriginal (and out of date) readme for haxegon follows:\n\n---\n\n# Haxegon (version 0.13.0 (2018-09-04))\n\nHaxegon is a tiny haxe programming library aimed at beginners. Haxegon is starting to get pretty stable, so you can expect the API not to change too much more before 1.0!\n\nThe current update, 0.13.0, brings support for the latest versions of OpenFL (8.4.1), Lime (7.0.0) and Starling (2.4.1). The **documentation** focus has been pushed back to 0.14.0 to keep things up to date!\n\nHaxegon compiles natively to **HTML5** and **Desktop** (Win, Mac, Linux, Neko). **Flash** is also supported as a legacy/development platform. Other platforms (including Mobile and Switch) are possible, and may be coming in future!\n\n## Trying it out\n\nInterested in trying it out? First install openfl via \u003ca href=\"http://www.openfl.org/learn/docs/getting-started/\"\u003einstructions here\u003c/a\u003e, then you can install Haxegon using haxelib:\n\n    haxelib install haxegon\n    \nOnce the library is installed, use this blank project file to get started:\n\n\u003ca href=\"https://github.com/TerryCavanagh/haxegon/raw/master/blankproject.zip\"\u003e[blankproject.zip]\u003c/a\u003e\n\nDocumentation is available at \u003ca href=\"http://haxegon.com\"\u003ehaxegon.com\u003c/a\u003e, and a growing selection of example projects are \u003ca href=\"https://github.com/TerryCavanagh/haxegon-samples\"\u003eavailable here\u003c/a\u003e. You can also extend Haxegon with \u003ca href=\"http://www.haxegon.com/plugins/\"\u003eplugins, available here\u003c/a\u003e.  More coming soon!\n\n# Last Updates\n\n0.13.0 (2018-09-04)\n------------------\n\n### About version 0.13.0\n\nHaxegon hasn't worked with the most recent versions of OpenFL for a couple of months now, so I decided to release this version to get things back up and running. Originally the idea was that this version would focus on documentation, but that's been pushed back. A lot of the changes in this version are advanced features added for OVERWHELM, and for my current project Dicey Dungeons - though there are plenty of other fixes and improvements that will benefit everyone who uses the library!\n\n### New features\n  * This version brings support for the latest versions of OpenFL (8.4.1), Lime (7.0.0) and Starling (2.4.1).\n  * Added `Core.enablescreen`, which allows you to turn off the Haxegon screen completely. Useful if you just want to use Starling display objects directly!\n  * Added `Core.imagesmoothing` - when true, uses bilinear smoothing when displaying images. `false` by default.\n  * Better, faster Starling Mesh batching. (thanks, @randomnine!)\n  * Optimisations to `Gfx.drawsubimage()`. (thanks, @randomnine!)\n  * Added `Gfx.drawellipse()` and `Gfx.fillellipse()`.\n  * Added support for paths with `../` in `Data.load` functions.\n  * Added `Core.mobilebrowser()`, which returns true if the application is being played in a browser on a mobile device.\n  * Added default parameters to `Save.loadvalue` - e.g. `var musicVolume = Save.loadvalue(\"MusicVolume\", .5);`. (thanks @increpare!)\n  \n### Bug fixes/Tweaks\n  * Updated Starling to v2.4.1.\n  * Fixed a bug where `Text.width()` wasn't giving reliable values for bitmap fonts.\n  * Supress default backspace key behaviour on HTML5. (It usually acts like a \"back\" button in browsers, which you probably don't want)\n  * Added `Gfx.unloadimage()`. (Unloads an image, freeing up its resources.)\n  * Support for higher resolution TTF fonts with `Text.setfont()`.\n  * Added `Debug.limitdrawcalls` for display list debugging.\n  * Fixed mouse deltas on touch controls.\n  * Fixed `Gfx.clearscreen(Col.TRANSPARENT)` - it now works as expected on all platforms.\n  * Fixed a memory leak with `Text.display()`.\n  * Fixed HTML5 Fullscreen button controls.\n  * Fixed `Music.currentposition`.\n  * Fixed autocomplete issues in HaxeDevelop with `Text.display()`.\n\n*(For a full update history, see \u003ca href=\"https://github.com/TerryCavanagh/haxegon/blob/master/changelog.md\"\u003ethe changelog\u003c/a\u003e.)*\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhaxegon%2Fhaxegon","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhaxegon%2Fhaxegon","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhaxegon%2Fhaxegon/lists"}