{"id":15724669,"url":"https://github.com/berrysauce/altar","last_synced_at":"2025-05-13T03:43:35.580Z","repository":{"id":171077671,"uuid":"647419740","full_name":"berrysauce/altar","owner":"berrysauce","description":"🎨 A lightweight API for identicon generation","archived":false,"fork":false,"pushed_at":"2024-11-19T09:16:42.000Z","size":403,"stargazers_count":20,"open_issues_count":1,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-28T20:25:54.750Z","etag":null,"topics":["avatar-generator","avatars","fastapi","identicon","identicon-generator","identicons","python","svg","vercel"],"latest_commit_sha":null,"homepage":"http://berrysauce.dev/altar/","language":"Python","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/berrysauce.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","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},"funding":{"github":"berrysauce","buy_me_a_coffee":"berrysauce"}},"created_at":"2023-05-30T18:39:14.000Z","updated_at":"2025-01-11T02:07:41.000Z","dependencies_parsed_at":null,"dependency_job_id":"e3849bfa-5d97-4261-800b-97bb989c6fb4","html_url":"https://github.com/berrysauce/altar","commit_stats":{"total_commits":58,"total_committers":2,"mean_commits":29.0,"dds":0.3620689655172413,"last_synced_commit":"8bee5fddd2c049ddc991ef6557883f2ae325e861"},"previous_names":["berrysauce/altar"],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/berrysauce%2Faltar","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/berrysauce%2Faltar/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/berrysauce%2Faltar/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/berrysauce%2Faltar/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/berrysauce","download_url":"https://codeload.github.com/berrysauce/altar/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252904858,"owners_count":21822687,"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":["avatar-generator","avatars","fastapi","identicon","identicon-generator","identicons","python","svg","vercel"],"created_at":"2024-10-03T22:17:31.551Z","updated_at":"2025-05-13T03:43:35.553Z","avatar_url":"https://github.com/berrysauce.png","language":"Python","funding_links":["https://github.com/sponsors/berrysauce","https://buymeacoffee.com/berrysauce"],"categories":[],"sub_categories":[],"readme":"\u003cimg src=\"https://berrysauce.dev/altar/assets/img/default.webp\" alt=\"Altar icon\" height=64\u003e\n\n# Altar\nAltar is a tiny API for the generation of identicons ([Wikipedia](https://en.wikipedia.org/wiki/Identicon)). Altar always generates the same image from the same input through hashing and simple calculations.\n\nThis means that you can use Altar to generate profile pictures for users based on their username, or any other unique identifier.\n\nAltar was built from the ground up with few dependencies, but is inspired from GitHub's Identicons and [minidenticons](https://github.com/laurentpayot/minidenticons).\n\nDue to its small size, Altar is very fast. Local Waiting / Local Time To First Byte times are usually between 3-4 ms.\n\n## Installation\n- **Locally** – install Altar wherever Python is supported by cloning the repository, installing all dependencies with `pip install -r requirements.txt` and running `main.py`\n- **Cloud** – run your own instance of Altar on Railway. Just click the button below and you'll be guided through the setup.\n\n[![Deploy on Railway](https://railway.com/button.svg)](https://railway.com/template/acMcnw?referralCode=xKqS3I)\n\n### 🔐 Restrict Access\nIt is possible to restrict the access to your Altar instance. To do that, simply create a `.env` file in the directory where Altar is and add `API_KEY` as a variable. \n\nIf you're hosting Altar on Vercel, go to Settings → Environment Variables and add `API_KEY` there. Choose a key for your Altar instance and set it as the value of the environment variable.\n\nTo make authenticated requests to Altar, use the `x-api-key` HTTP header with the `API_KEY` as the value.\n\n\n## How to use\nAn API request to Altar only requires the data you want to use to generate the identicon. There are overrides (e.g. for the file size and color) which can be found in the documentation.\n\n```http\nGET  https://altar.berrysauce.dev/generate?data=example\n```\n\n![Uptime](https://uptime.berrysauce.dev/api/badge/9/uptime)\n\nAltar currently has two public endpoints:\n- **Origin:** https://altar.berrysauce.dev\n- **🚀 CDN:** https://altarcdn.berrysauce.dev\n\n\u003e [!NOTE]  \n\u003e As Altar always generates the same image based on your input, it's recommendet to use the CDN endpoint for better performance.\n\n\u003e [!WARNING]  \n\u003e Altar is just a small project, therefore security cannot always be guaranteed. It's only recommended to pass on usernames or unique identifiers to Altar, which do not include or grant access to personal information.\n\n### Headers\n\n| Header        | Type    | Description                                                                            | Required              |\n| :-------------|:--------|:---------------------------------------------------------------------------------------| :---------------------|\n| `x-api-key`   | String  | API Key for authentication, if it was set as an environment variable.                  | no (if set, yes  ⚠️)      |\n\n### Query Parameters\n\n| Query         | Type    | Description                                                                            | Required |\n| :-------------|:--------|:---------------------------------------------------------------------------------------| :--------|\n| `data`        | String  | Data to be used for identicon generation                                               | yes ⚠️    |\n| `color`       | String  | HEX Color to be used for the identicon foreground without '#' (default: generated based on input) | no       |\n| `background`  | String  | HEX Color to be used for the identicon background without '#' prefix (default: none/transparent)  | no       |\n| `size`        | Integer | Width \u0026 Height of the scaled SVG (default: 250)                                        | no       |\n| `padding`     | Integer | Padding for the identicon (default: 0)                                                 | no       |\n\n## Development\n1. Install Altar wherever Python is supported by cloning the repository\n2. Install all dependencies with `pip install -r requirements.txt`\n3. Run `main.py` with `python main.py`\n\n\u003e [!NOTE]\n\u003e Altar is built with Python 3.9.x, but should work with any Python version above 3.6\n\n## License\nAltar is licensed under the MIT license.\n\nCopyright (c) 2023 Paul Haedrich\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fberrysauce%2Faltar","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fberrysauce%2Faltar","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fberrysauce%2Faltar/lists"}