gd-icon-renderer-web

Version, currently main branch1 version
  • main branchlatestJan 20, 2026

github.com/oatmealine/gd-icon-renderer-web

A server-side renderer API for Geometry Dash icons

6 stars
0 dependents
License: MIT

Installation

# Add this to your shard.yml
dependencies:
  gd-icon-renderer-web:
    github: oatmealine/gd-icon-renderer-web
    branch: main

main is a branch, not a release, so this tracks it rather than pinning a version.

Then run:

shards install

shard.yml

Crystal
1.6.2
License
MIT
Author
Jill "oatmealine" Monoids
Target
  • gd-icon-renderer-web from src/gd-icon-renderer-web.cr

Dependencies

Runtime Dependencies

README

gd-icon-renderer-web

A server-side renderer API for Geometry Dash icons, made with gd-icon-renderer

| | | :---: | | Result given the input /icon.png?type=cube&value=181&color1=8&color2=70 |

Usage

https://gdicon.oat.zone/icon.png?type=cube&value=181&color1=8&color2=70

color1 and color2 can accept numeric color values or hex color strings; file format is not limited to png, can be webp, jpg, etc.

Self-hosting

Installation

  1. You'll need libvips (and its development packages, for compilation) as well as the Crystal compiler on your machine. Get those from your package manager; I'm sure you know how.

  2. Clone the repo:

    git clone https://github.com/oatmealine/gd-icon-renderer-web
  3. Install dependencies:

    shards install
  4. Build:

    shards build

Usage

  1. Fill out the info in .env.example (into .env) as necessary
  2. Put the following files from your Geometry Dash resources folder into data/ (create if it doesn't exist):
    icons/*-uhd.*
    Robot_AnimDesc.plist
    Spider_AnimDesc.plist
  3. Run bin/gd-icon-renderer-web (or shards run for development environments)