{"id":30199690,"url":"https://github.com/knuxify/vrc-embed","last_synced_at":"2026-05-16T18:31:50.235Z","repository":{"id":309420957,"uuid":"1025154482","full_name":"knuxify/vrc-embed","owner":"knuxify","description":"Generate SVG/PNG preview of your VRChat profile for embedding on websites","archived":false,"fork":false,"pushed_at":"2025-12-01T11:27:37.000Z","size":286,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-02-08T11:06:26.666Z","etag":null,"topics":["png-generation","svg-generation","vrchat"],"latest_commit_sha":null,"homepage":"https://vrc.dissonant.dev","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/knuxify.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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-07-23T20:11:13.000Z","updated_at":"2025-12-01T11:27:41.000Z","dependencies_parsed_at":"2026-01-23T08:09:20.543Z","dependency_job_id":null,"html_url":"https://github.com/knuxify/vrc-embed","commit_stats":null,"previous_names":["knuxify/vrc-embed"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/knuxify/vrc-embed","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/knuxify%2Fvrc-embed","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/knuxify%2Fvrc-embed/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/knuxify%2Fvrc-embed/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/knuxify%2Fvrc-embed/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/knuxify","download_url":"https://codeload.github.com/knuxify/vrc-embed/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/knuxify%2Fvrc-embed/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33114167,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-16T04:41:52.686Z","status":"ssl_error","status_checked_at":"2026-05-16T04:41:52.009Z","response_time":115,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["png-generation","svg-generation","vrchat"],"created_at":"2025-08-13T08:08:13.495Z","updated_at":"2026-05-16T18:31:50.230Z","avatar_url":"https://github.com/knuxify.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# vrc-embed\n\nGenerate embeddable images for VRChat profiles\n\n## Why?\n\nIf you want to show off your current VRChat status on an external website (blog, Carrd, forum signature...), there's no easy official way to do it; even doing API queries requires a proper backend due to CORS limitations, which rules out client-side JS-based embeds.\n\nvrc-embed solves this in a simple way: by generating an embeddable image on the server side, then allowing it to be embedded on another website. Images come in multiple flavors; the raw images are SVGs which can be used for space efficiency and speed, but PNG renders are also available for compatibility.\n\n## Setup\n\nYou will need a VRChat account to use for API queries (querying user data is not possible without authentication). You can use your own account for this (you will not show up as online while vrc-embed is running), but if your instance sees a lot of use, it may be safer to create a separate account.\n\nSetting up 2FA is highly recommended, as VRChat often asks for a code during authentication, and vrc-embed can generate these codes automatically when a TOTP secret is configured. See the comment in `config.toml.example` for a guide - notably, **you will need to save the TOTP secret to put in the config**.\n\n### Native\n\n* Install Python, Redis, ImageMagick and rsvg-convert (might be part of librsvg package).\n* Enable/start the Redis service.\n* Create a new virtualenv with `python3 -m venv venv; activate with `. venv/bin/activate`.\n* Install dependencies: `python3 -m pip install -r requirements.txt`\n  * For Python 3.10 and lower, install `toml` and `taskgroup`.\n* Copy `config.toml.example` to `config.toml`. Adjust as needed.\n* Download a copy of the Noto Sans Regular font and place it in `fonts/notosans.ttf`.\n* Download a copy of the Noto Sans Bold font and place it in `fonts/notosans-bold.ttf`.\n* Run with `./run-prod.sh`.\n\n**Note:** For development, you can use `poetry`. Run `poetry install` to fetch dependencies, then run with `poetry run ./run-dev.sh`.\n\n### Docker\n\nSee `docker/README.md` for instructions.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fknuxify%2Fvrc-embed","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fknuxify%2Fvrc-embed","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fknuxify%2Fvrc-embed/lists"}