{"id":24015937,"url":"https://github.com/nikouu/gameboycolorreducer","last_synced_at":"2026-04-30T12:33:25.029Z","repository":{"id":271339084,"uuid":"903581393","full_name":"nikouu/GameboyColorReducer","owner":"nikouu","description":"Reduce/decrease/simplify Gameboy Color images images online to the four colours of the original Gameboy (DMG).","archived":false,"fork":false,"pushed_at":"2025-01-17T06:44:32.000Z","size":39328,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-23T03:54:09.254Z","etag":null,"topics":["aot","aot-compilation","blazor","blazor-webassembly","csharp","dotnet","gameboy","gameboy-color","gameboycolor","gb-studio","gbstudio","sprites","tiles","webassembly"],"latest_commit_sha":null,"homepage":"https://nikouu.github.io/GameboyColorReducer/","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/nikouu.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":"2024-12-15T01:10:51.000Z","updated_at":"2025-02-04T05:10:54.000Z","dependencies_parsed_at":null,"dependency_job_id":"10ab4e1e-fab7-441b-9451-753c56fd19f0","html_url":"https://github.com/nikouu/GameboyColorReducer","commit_stats":null,"previous_names":["nikouu/gameboycolorreducer"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nikouu%2FGameboyColorReducer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nikouu%2FGameboyColorReducer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nikouu%2FGameboyColorReducer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nikouu%2FGameboyColorReducer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nikouu","download_url":"https://codeload.github.com/nikouu/GameboyColorReducer/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240729873,"owners_count":19848238,"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":["aot","aot-compilation","blazor","blazor-webassembly","csharp","dotnet","gameboy","gameboy-color","gameboycolor","gb-studio","gbstudio","sprites","tiles","webassembly"],"created_at":"2025-01-08T08:23:12.864Z","updated_at":"2026-04-30T12:33:24.996Z","avatar_url":"https://github.com/nikouu.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Gameboy Color Reducer\nReduce/decrease/simplify Gameboy Color images images online to the four colours of the original Gameboy (DMG).\n\n[Try it right now via GitHub Pages!](https://nikouu.github.io/GameboyColorReducer/)\n\n![preview image](etc/Preview.png)\n\nCheck out the example buttons to get started, or use your own image. All images are processed in-browser.\n\n## Why two algorithms?\n\nPrimarily this project is about the tile reducer. It's aimed at tilemaps with discrete borders and boundaries containing colours in tidy 8x8 pixel tiles. \n\nIn the example below, the tile reducer gives proper tile definition by looking at each colour in every tile.\n\n![Cerulean city comparison](etc/TileExample.png)\n\nLooking at the art reducer on the right shows flattned colours and some definition washed out. However it still serves an important role to give us options.\n\nThe art reducer is a nearest neighbour quantizer, similar to what GB Studio uses. This flattens colours and washes out some definition, but also prevents odd blocks of colour in more artistic pictures.\n\nCheck out the lapras part of the Pokemon Silver title screen cutscene:\n\n![Lapras](etc/ArtExample.png)\n\nThe clouds look blocky due to a tile approach, but look smooth in the art approach - even if some of the definition from darker colours are lost.\n\nNote: \n1. It may be impossible to properly colour some art because the \"four colour per tile\" hardware limitation can be worked around by mixing backgrounds and sprites. See [Creating A “Reward” Scene](https://gbstudiocentral.com/tips/putting-together-a-flashy-scene/) by \nGumpy Function for more\n2. The art function is not the goal of this project. It's put in for fun 🤷‍♀️\n\n## Previous work\n\nThis work builds on my previous command line tool: [GameboyColour-Decolouriser](https://github.com/nikouu/GameboyColour-Decolouriser). This post explains the basis around how the tile colour reduction algorithm works.\n\n## Technology\n\nThis is a WebAssembly project via Blazor AOT and C#.\n\n## Acknowledgements\n\n- This project uses [ImageSharp](https://github.com/SixLabors/ImageSharp) by Six Labors, which is licensed under the Apache License 2.0.\n- Images from benchmarking and testing via [The Spriters Resource](https://www.spriters-resource.com/) or myself.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnikouu%2Fgameboycolorreducer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnikouu%2Fgameboycolorreducer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnikouu%2Fgameboycolorreducer/lists"}