{"id":13524904,"url":"https://github.com/poke1024/tove2d","last_synced_at":"2025-09-09T23:37:46.402Z","repository":{"id":93584791,"uuid":"133139546","full_name":"poke1024/tove2d","owner":"poke1024","description":"Animated vector graphics for LÖVE.","archived":false,"fork":false,"pushed_at":"2025-01-31T09:52:12.000Z","size":15759,"stargazers_count":180,"open_issues_count":7,"forks_count":7,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-05-24T16:16:48.506Z","etag":null,"topics":["game-development","love2d","nanosvg","vector-graphics"],"latest_commit_sha":null,"homepage":"","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/poke1024.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-05-12T11:26:05.000Z","updated_at":"2025-05-20T00:59:32.000Z","dependencies_parsed_at":null,"dependency_job_id":"98d25f86-c1f0-43a4-956a-afcfc1026c95","html_url":"https://github.com/poke1024/tove2d","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"purl":"pkg:github/poke1024/tove2d","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/poke1024%2Ftove2d","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/poke1024%2Ftove2d/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/poke1024%2Ftove2d/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/poke1024%2Ftove2d/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/poke1024","download_url":"https://codeload.github.com/poke1024/tove2d/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/poke1024%2Ftove2d/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274383872,"owners_count":25275185,"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","status":"online","status_checked_at":"2025-09-09T02:00:10.223Z","response_time":80,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["game-development","love2d","nanosvg","vector-graphics"],"created_at":"2024-08-01T06:01:14.439Z","updated_at":"2025-09-09T23:37:46.379Z","avatar_url":"https://github.com/poke1024.png","language":"C++","funding_links":[],"categories":["Player vs AI","Drawing"],"sub_categories":["AI Forward"],"readme":"# TÖVE \u003cimg align=\"right\" src=\"https://github.com/poke1024/tove2d/blob/master/docs/tutorials/images/tovelogo.png\" height=\"200\"\u003e\nAnimated vector graphics for [LÖVE](https://love2d.org/).\n\n## Description\nTÖVE is a vector drawing canvas for LÖVE, think HTML5's \u003ca href=\"https://developer.mozilla.org/en-US/docs/Web/API/Canvas_API\"\u003e`\u003ccanvas\u003e`\u003c/a\u003e or  OpenFL's \u003ca href=\"https://api.openfl.org/openfl/display/Graphics.html\"\u003e`Graphics`\u003c/a\u003e. Which you can animate. Efficiently.\n\n## Background\nThere have been various libraries for drawing vector graphics out there, but few of them are built for drawing or even animating complex scenes and most of them stopped at the most basic features.\n\nAs an example, take the HTML5 `\u003ccanvas\u003e` tag: it's great in terms of quality, yet it's slow for animation or games, as it doesn't know how to keep its graphics data retained on the GPU: indeed, it will do a full redraw of the whole scene on each frame.\n\nYou can use WebGL, but then you lose vector graphics. There have been attempts to fix this by implementing vector graphics on top of WebGL, such as \u003ca href=\"https://github.com/bigtimebuddy/pixi-svg\"\u003ePIXI SVG\u003c/a\u003e and the \u003ca href=\"https://threejs.org/docs/#examples/loaders/SVGLoader\"\u003eThreeJS SVG Loader\u003c/a\u003e. TÖVE is exactly like these, only more comprehensive. And for LÖVE.\n\n## Features\n* brings crisp vector graphics and SVGs to LÖVE\n* offers a substantial subset of SVG\n* built for realtime scaling and animation\n* details: https://poke1024.github.io/tove2d/features\n\n## Getting Started\nReleases are available for macOS, Linux and Windows: https://github.com/poke1024/tove2d/releases.\n\nSome tutorials and general information on TÖVE are found in\n\u003ca href=\"https://poke1024.github.io/tove2d/\"\u003eTÖVE's documentation\u003c/a\u003e.\n\nBe sure to check out \u003ca href=\"https://poke1024.github.io/tove2d-api/\"\u003eTÖVE's API documentation\u003c/a\u003e,\nwhich gives you detailed information on classes and functions.\n\nNote: on Windows, in order to run the demos, you need to call `setup.bat` once (this\nwill fix the links to the lib and asset folders, so you can run e.g. `love demos/blob`).\n\n## Building TÖVE Yourself\n\n### On Linux and macOS\n\n```\ngit clone --recurse-submodules https://github.com/poke1024/tove2d\ncd tove2d\nscons\nlove demos/hearts\n```\n\n### On Windows\n\n```\n# in git bash:\ngit clone --recurse-submodules https://github.com/poke1024/tove2d\ncd tove2d\n\n# in regular cmd shell:\ncd path/to/tove2d\nsetup.bat /C\n```\n\nTake a look inside `setup.bat` to learn more about installing a compiler environment.\n\n### Experimental\n\nUse `scons --arch=sandybridge` or `scons --arch=haswell` to compile for a custom CPU architecture. On Windows, this enables AVX extensions,\nwhich mainly speeds up the rasterizer dithering code.\n\nOn POSIX, in addition, you can enable hardware intrinsics for 16-bit floating point operations by using `scons --f16c`. These intrinsics\nmight give small performance benefits in the `gpux` mode.\n\nSince enabling custom options causes crashes on some CPUs (https://github.com/poke1024/tove2d/issues/24), I strongly recommend sticking to\nthe defaults, as they ensure that your binary will run on many CPUs.\n\n## Roadmap\n\nI keep my ideas of what might eventually end up in TÖVE in [TÖVE's Public Trello Board](https://trello.com/b/p5nWCZVC/t%C3%B6ve).\n\n## License\nTÖVE is licensed under the MIT license.\n\nDetails and the licenses of the included third party code are found in the [LICENSE](https://github.com/poke1024/tove2d/blob/master/LICENSE) file.\n\n## Credits\nTÖVE owes a lot to Mikko Mononen's excellent NanoSVG. Not only does TÖVE call NanoSVG in various places, it has also inherited some of its code.\n\nTÖVE's API was inspired by [EaselJS](https://www.createjs.com/easeljs) and [PlotDevice](https://plotdevice.io).\n\nThe graphics you see in the tutorials and demos are by [Mike Mac](https://mikemac2d.itch.io), [Kenney](https://kenney.nl/) and [Chris Hildenbrand](https://2dgameartguru.com/). The font in the demos is \"amatic\" by Vernon Adams. \n\n## About the Name\nTÖVE is a portmanteau of **LÖVE**, **To**wards **Ve**ctor Graphics and **Tove** Jansson, the Swedish author and illustrator of the Moomins.\n\n## Similar Projects\n* For a pure-lua implementation of SVG rendering, look at Lovable Vector Graphics: https://github.com/Bananicorn/lvg\n* A super-elegant NanoSVG wrapper can be found at https://love2d.org/forums/viewtopic.php?f=5\u0026t=86419\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpoke1024%2Ftove2d","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpoke1024%2Ftove2d","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpoke1024%2Ftove2d/lists"}