{"id":25895206,"url":"https://github.com/francoyudica/shapeify","last_synced_at":"2025-04-07T05:08:46.701Z","repository":{"id":263713278,"uuid":"890387123","full_name":"FrancoYudica/Shapeify","owner":"FrancoYudica","description":"Recreate your images with simple shapes","archived":false,"fork":false,"pushed_at":"2025-03-15T14:13:30.000Z","size":108214,"stargazers_count":112,"open_issues_count":3,"forks_count":8,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-07T05:08:38.553Z","etag":null,"topics":["compute-shader","computer-graphics","genetic-algorithm","godot","image-generation","image-processing","local-search-algoirthms"],"latest_commit_sha":null,"homepage":"","language":"GDScript","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/FrancoYudica.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","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":"2024-11-18T13:36:43.000Z","updated_at":"2025-03-27T09:16:32.000Z","dependencies_parsed_at":null,"dependency_job_id":"3bcc13c2-d1a7-4f99-ac47-f491f2d0c76a","html_url":"https://github.com/FrancoYudica/Shapeify","commit_stats":null,"previous_names":["francoyudica/geneticart","francoyudica/genart","francoyudica/shapeify"],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FrancoYudica%2FShapeify","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FrancoYudica%2FShapeify/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FrancoYudica%2FShapeify/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FrancoYudica%2FShapeify/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/FrancoYudica","download_url":"https://codeload.github.com/FrancoYudica/Shapeify/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247595334,"owners_count":20963943,"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":["compute-shader","computer-graphics","genetic-algorithm","godot","image-generation","image-processing","local-search-algoirthms"],"created_at":"2025-03-02T22:15:52.317Z","updated_at":"2025-04-07T05:08:46.684Z","avatar_url":"https://github.com/FrancoYudica.png","language":"GDScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n\n[![▶️ Watch the Shapeify Showcase Video](https://github.com/user-attachments/assets/7179235c-9dab-4ecd-ae14-5569173dd96c)](https://youtu.be/ovkoXVkdLto \"Watch on YouTube\")\n\n📺 _Click the image to watch the video on YouTube!_\n\n\u003ca href=\"https://github.com/FrancoYudica/Shapeify/blob/main/LICENSE\"\u003e\u003cimg alt=\"License\" src=\"https://img.shields.io/badge/License-MIT-blue.svg?\" /\u003e\u003c/a\u003e\n\u003ca href=\"https://godotengine.org/download/\"\u003e\u003cimg alt=\"Godot v4.3+\" src=\"https://img.shields.io/badge/Godot-v4.3+-blue.svg?\" /\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/FrancoYudica/Shapeify/releases\"\u003e\u003cimg alt=\"Latest Release\" src=\"https://img.shields.io/github/v/release/FrancoYudica/Shapeify?include_prereleases\u0026\"\u003e\u003c/a\u003e\n\n\u003c/div\u003e\n\n**Shapeify** is a desktop application that recreates any image using smaller shapes, giving it a unique and stylized look.\n\n\u003cdiv align=\"center\"\u003e\n\n\u003cimg src=\"https://github.com/user-attachments/assets/22578a87-1d6a-4a08-9506-2c7e2c722967\" width=800\u003e\u003c/img\u003e\n\n\u003c/div\u003e\n\n## Features\n\nShapeify offers a powerful yet easy-to-use interface, allowing full control over the image reconstruction process with a wide range of tweakable parameters. Key features include:\n\n- Reconstruct any image using a selected set of smaller images as building blocks.\n- Save your artwork in multiple formats, including PNG, JPG, WEBP, and JSON, for integration into custom projects.\n- Load various image formats, including PNG, JPG, SVG, JPEG, BMP, and WEBP.\n- Animate your creations with Shapeify’s integrated animator.\n- Optimize results effortlessly with predefined modes: SUPER_FAST, FAST, PERFORMANCE, and QUALITY.\n- Access tested default image collections for quick and effortless artwork generation.\n- Customize every aspect of the algorithm with a wide range of adjustable parameters.\n- Guide the algorithm intelligently using an automatically generated weight texture, prioritizing key areas of the image.\n- User input to provide a mask for guiding the algorithm.\n\n## Installation\n\nShapeify is available through the following options:\n\n- [Itch.io](https://franco-yudica.itch.io/shapeify)\n- The latest [GitHub release](https://github.com/FrancoYudica/Shapeify/releases)\n- Building the project locally using [Godot 4.3](https://godotengine.org/download).\n\n## Settings\n\nShapeify provides an extensive range of configurable settings, allowing users to adjust the attributes of its algorithms through a dedicated interface. Additionally, pre-tested presets are available to produce high-quality results, offering a practical option for users who may not have prior knowledge of the underlying algorithms.\n\n![all_toggle_panels](https://github.com/user-attachments/assets/72f9e4a2-1f81-4cd2-9c03-c2ad71e90678)\n\n## Animator\n\nAfter the image is generated, you can apply animations, which are built into Shapeify by default. These function similarly to vertex shaders, allowing you to create animations like the following:\n\n\u003cdiv align=\"center\"\u003e\n\n\u003cimg src=\"https://github.com/user-attachments/assets/4435999a-13db-43ec-9bff-8201edceb9c2\" width=\"200\"\u003e \n\u003cimg src=\"https://github.com/user-attachments/assets/0e52b0c1-fd33-4e48-98ea-4ed8f249c339\" width=\"200\"\u003e \n\u003cimg src=\"https://github.com/user-attachments/assets/4cc8ea00-01cd-4a67-a7d0-c463d048d72a\" width=\"200\"\u003e\n\u003cimg src=\"https://github.com/user-attachments/assets/217b30cb-79d1-461d-87b7-c11d2a529545\" width=\"200\"\u003e\n\n\u003c/div\u003e\n\nNote that animations are exported as a sequence of images, therefore using a tool such as [ffmpeg](https://www.ffmpeg.org/) is required in order to generate a video or gif.\n\n## Post processing\n\nShapeify includes a set of post-processing effects that are applied after the shapes are generated, meaning they do not interfere with the core algorithm.\n\nCurrently, the available post-processing effects include:\n\n- Hue Shift\n- Value Shift\n- Saturation Shift\n- RGB Shift\n- CIELAB Shift\n\nBelow are some examples showcasing the possibilities of the post-processing pipeline, achieved by combining multiple effects:\n\n\u003cdiv align=\"center\"\u003e\n\n\u003cimg src=\"https://github.com/user-attachments/assets/fb387ad2-3055-4ac5-b589-bc4ba7683eeb\" title=\"Image without post processing\" style=\"vertical-align: top;\" width=125\u003e\n\u003cimg src=\"https://github.com/user-attachments/assets/0414a146-a037-4041-8ec8-bace543dee71\" style=\"vertical-align: top;\" width=125\u003e\n\u003cimg src=\"https://github.com/user-attachments/assets/8b27c4d4-b1cd-488d-aee7-3ace8eab9647\" style=\"vertical-align: top;\" width=125\u003e\n\u003cimg src=\"https://github.com/user-attachments/assets/5b9338c8-e4fc-4512-b991-3c33dbb61ffc\" style=\"vertical-align: top;\" width=125\u003e\n\u003cimg src=\"https://github.com/user-attachments/assets/3d739dd2-929e-4249-911f-cf8cfa7eaf48\" style=\"vertical-align: top;\" width=125\u003e\n\u003cimg src=\"https://github.com/user-attachments/assets/f66d86a8-8439-4589-8d77-e418ed6c15ea\" style=\"vertical-align: top;\" width=125\u003e\n\n\u003c/div\u003e\n\n## Contributing\n\nContributions of all kinds are welcome! If you’re interested in contributing to this project, please take a moment to review [`CONTRIBUTING.md`](https://github.com/FrancoYudica/Shapeify/blob/main/CONTRIBUTING.md) file.\n\n## Whitepaper\n\nA [whitepaper](https://github.com/FrancoYudica/Shapeify/blob/v1.0.0/whitepaper_esp.md) was written for version _v1.0.0_, detailing the algorithms used in the project in spanish. While it's a bit outdated, it may be updated in the future.\n\n## Gallery\n\nHere are some examples demonstrating Shapeify's versatility, using different shapes to create a diverse range of artistic styles:\n\n\u003cdiv align=\"center\"\u003e\n\u003cimg src=\"https://github.com/user-attachments/assets/1e0c5fa0-c56a-4779-976a-b878cb011da0\" title=\"Billie Eilish 500 shapes\" style=\"vertical-align: top;\" width=400\u003e\n\u003cimg src=\"https://github.com/user-attachments/assets/6969049d-084d-4483-b045-9413acb509dc\" title=\"Flowers 500 shapes\" style=\"vertical-align: top;\" width=400\u003e\n\u003cimg src=\"https://github.com/user-attachments/assets/2b24f0b4-e0cb-43d6-8619-0ec5454be19b\" title=\"Mona Lisa 300 rotated capsule shapes\" style=\"vertical-align: top;\" width=400\u003e\n\u003cimg src=\"https://github.com/user-attachments/assets/7b5d8446-fa04-462f-a145-890644035e94\" title=\"Bunny 200 shapes\" style=\"vertical-align: top;\" width=400\u003e\n\u003cimg src=\"https://github.com/user-attachments/assets/59c6cfed-ef1c-4be3-8ac0-e64f03511365\" title=\"Beach 350 shapes\" style=\"vertical-align: top;\" width=800\u003e\n\u003cimg src=\"https://github.com/user-attachments/assets/5dd0bb35-8150-4b1c-82c2-aca1d236d7b0\" title=\"People dancing 200 shapes\" style=\"vertical-align: top;\" width=400\u003e \n\u003cimg src=\"https://github.com/user-attachments/assets/6fd4d317-b1c4-4eff-9258-c8698db704b9\" title=\"Eye 400 shapes\" style=\"vertical-align: top;\" width=400\u003e\n\u003cimg src=\"https://github.com/user-attachments/assets/6d54294a-e804-4ef1-a9c0-bfae469827b6\" title=\"Dwayne Johnson 400 shapes\" style=\"vertical-align: top;\" width=400\u003e\n\u003cimg src=\"https://github.com/user-attachments/assets/43ce2e25-f2c3-46f1-9268-4af9d433847c\" title=\"Sabana tree 300 shapes\" style=\"vertical-align: top;\" width=400\u003e\n\u003cimg src=\"https://github.com/user-attachments/assets/9f3c5b9e-9f70-47e4-ab93-aebf85ef2b9b\" title=\"Train station 600 shapes\" style=\"vertical-align: top;\" width=800\u003e\n\u003cimg src=\"https://github.com/user-attachments/assets/8ffe17c1-1f48-4135-8410-453f323c3e0f\" title=\"Breakdance 200 shapes\" style=\"vertical-align: top;\" width=400\u003e\n\u003cimg src=\"https://github.com/user-attachments/assets/d430de88-51de-4205-b1e0-56ff1cab9419\" title=\"Flowers 200 shapes\" style=\"vertical-align: top;\" width=400\u003e\n\u003cimg src=\"https://github.com/user-attachments/assets/e8559b60-c30f-4012-82b6-08838c8deae3\" title=\"Dog 300 shapes\" style=\"vertical-align: top;\" width=400\u003e\n\u003cimg src=\"https://github.com/user-attachments/assets/0df989fd-d0aa-41f0-b515-4e6e6d7497b8\" title=\"Smoking 300 shapes\" style=\"vertical-align: top;\" width=400\u003e\n\u003cimg src=\"https://github.com/user-attachments/assets/ed774f82-cd45-433c-bc59-5cd6e9e11046\" title=\"Bottles 1400 different shapes\" style=\"vertical-align: top;\" width=800\u003e\n  \n\u003c/div\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffrancoyudica%2Fshapeify","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffrancoyudica%2Fshapeify","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffrancoyudica%2Fshapeify/lists"}