{"id":18271865,"url":"https://github.com/leafo/aroma","last_synced_at":"2025-04-15T17:23:58.768Z","repository":{"id":689862,"uuid":"333999","full_name":"leafo/aroma","owner":"leafo","description":"a game engine: lua, opengl es 2.0, native client","archived":false,"fork":false,"pushed_at":"2012-09-03T20:34:20.000Z","size":1494,"stargazers_count":197,"open_issues_count":7,"forks_count":20,"subscribers_count":13,"default_branch":"master","last_synced_at":"2025-03-28T23:03:56.468Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://leafo.net/aroma","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/leafo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2009-10-11T16:15:26.000Z","updated_at":"2025-03-23T03:08:30.000Z","dependencies_parsed_at":"2022-08-16T10:45:12.372Z","dependency_job_id":null,"html_url":"https://github.com/leafo/aroma","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leafo%2Faroma","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leafo%2Faroma/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leafo%2Faroma/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leafo%2Faroma/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/leafo","download_url":"https://codeload.github.com/leafo/aroma/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249116981,"owners_count":21215313,"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":[],"created_at":"2024-11-05T11:39:33.671Z","updated_at":"2025-04-15T17:23:58.743Z","avatar_url":"https://github.com/leafo.png","language":"C","readme":"# aroma v0.0.3\n#### a game engine\nLeaf Corcoran, 2012\n\n\u003chttp://leafo.net/aroma/\u003e\n[Changelog](http://leafo.net/aroma/changelog.html)\n\n## About\n\nAroma is game creation framework/platform that targets [Chrome's Native\nClient][1]. It lets you create games that can be distributed through the Chrome\nWeb Store.\n\nAroma games are written in the Lua programming language.\n\nAroma implements the [LÖVE][2] API in order to make porting existing games\neasy.\n\n## How it works\n\nUpload Aroma's `.nexe` binaries, `.nmf` file, and javascript support to a\ndirectory. Then upload your entire game (Lua code, images, and audio) alongside\nit and write a simple html file.\n\nSee the [tutorial][3] for a more detailed guide.\n\nAroma facilitates resource loading for you. It also handles drawing to an\nOpenGL powered canvas. Aroma will reuse features of the browser whenever\npossible, for things like decoding images, playing audio and downloading code.\n\n## Dependencies\n\n* [Lua 5.1](http://lua.org)\n* [Lua CJSON](http://www.kyne.com.au/~mark/software/lua-cjson.php)\n\n## How To Build\n\nBuilding can be a bit challenging, but here is a brief overview. I build Aroma\non Linux. It should work on OSX. If you're on Windows you're on your own! (But\nif you figure it out, tell me and I'll update this guide)\n\nThe following dependencies are required before building:\n\n * [tup](http://gittup.org/tup/index.html) -- the build system\n * [git](http://git-scm.com) -- used in the 32 bit build script\n * [NaCL SDK](https://developers.google.com/native-client/sdk/download) -- Pepper 18\n * [moonscript-dev-1](http://moonscript.org/#source)\n * [CoffeeScript](http://coffeescript.org)\n * [xxd](http://linux.die.net/man/1/xxd)\n\n*If you want to build the website (which you probably don't), you need\n[sitegen](http://leafo.net/sitegen) and [lessphp](http://leafo.net/lessphp)*\n\nAfter all the dependencies are set up, head into the `nacl` folder and run:\n\n    $ ./installs_deps\n\nThis will download and extract Lua 5.1.2 and Lua CJSON.\n\nNext, head to the root directory, set up tup and tell it to build!\n\n    $ tup init\n    $ tup upd\n\nBy default this will build the 64 bit version of Aroma. I've provided a\nmakefile in the `nacl` folder with a directive for building 32 bit, just run:\n\n    $ make 32\n\nIf you want to make tup build 32 by default then edit `tup.config` in the root\ndirectory, and uncomment the line:\n\n    CONFIG_NACL_ARCH=i686\n\nAnd finally, I use tup for this reason, run this command:\n\n    $ tup monitor -a -f\n\nThis watches the filesystem and builds what's needed when you change something.\n\n  [1]: https://developers.google.com/native-client/\n  [2]: http://love2d.org\n  [3]: http://leafo.net/aroma/tutorial.html\n\n","funding_links":[],"categories":["etc","Game Development"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fleafo%2Faroma","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fleafo%2Faroma","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fleafo%2Faroma/lists"}