{"id":16162866,"url":"https://github.com/luckyturtledev/mstickereditor","last_synced_at":"2025-04-06T19:11:07.669Z","repository":{"id":44195996,"uuid":"419347608","full_name":"LuckyTurtleDev/mstickereditor","owner":"LuckyTurtleDev","description":"import sticker packs from telegram, to be used at the Maunium sticker picker for Matrix","archived":false,"fork":false,"pushed_at":"2025-01-06T12:39:05.000Z","size":322,"stargazers_count":33,"open_issues_count":12,"forks_count":4,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-03-30T18:08:06.412Z","etag":null,"topics":["matrix","maunium-stickerpicker","rust","sticker","stickerpicker"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/LuckyTurtleDev.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":"2021-10-20T13:44:25.000Z","updated_at":"2025-03-03T08:14:09.000Z","dependencies_parsed_at":"2025-01-06T13:25:22.324Z","dependency_job_id":"11a0e4f2-05d1-42a8-a13d-32e42a48a331","html_url":"https://github.com/LuckyTurtleDev/mstickereditor","commit_stats":{"total_commits":133,"total_committers":6,"mean_commits":"22.166666666666668","dds":"0.30827067669172936","last_synced_commit":"404988a81da64655cc662c6f6935638ce704317b"},"previous_names":[],"tags_count":13,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LuckyTurtleDev%2Fmstickereditor","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LuckyTurtleDev%2Fmstickereditor/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LuckyTurtleDev%2Fmstickereditor/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LuckyTurtleDev%2Fmstickereditor/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/LuckyTurtleDev","download_url":"https://codeload.github.com/LuckyTurtleDev/mstickereditor/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247535516,"owners_count":20954576,"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":["matrix","maunium-stickerpicker","rust","sticker","stickerpicker"],"created_at":"2024-10-10T02:33:33.069Z","updated_at":"2025-04-06T19:11:07.650Z","avatar_url":"https://github.com/LuckyTurtleDev.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![GitHub actions](https://github.com/Lukas1818/mstickereditor/workflows/Rust/badge.svg)](https://github.com/Lukas1818/mstickereditor/actions?query=workflow%3ARust)\n[![crates.io](https://img.shields.io/crates/v/mstickereditor.svg)](https://crates.io/crates/mstickereditor)\n[![License Apache-2.0](https://img.shields.io/badge/license-Apache--2.0-blue.svg)](https://www.apache.org/licenses/LICENSE-2.0)\n[![Matrix chat](https://img.shields.io/badge/chat-matrix-informational?logo=matrix)](https://matrix.to/#/#mstickereditor:lukas1818.de)\n[![AUR package](https://repology.org/badge/version-for-repo/aur/mstickereditor.svg)](https://aur.archlinux.org/packages/mstickereditor/)\n\n# mstickereditor\nImport sticker packs from telegram, to be used at the [Maunium sticker picker](https://github.com/maunium/stickerpicker) for Matrix\n\n## Features:\n* import Stickerpacks from Telegram (including animated and video stickers)\n* enable Stickerpicker widget for supported Matrix Clients\n\n## Client Support for Animated Sticker:\n| Client                   | gif         | webp(default)     | stickerpicker type | \n|--------------------------|-------------|-------------------|-------------------|\n| [Cinny]                  | ✅          | ✅                | ponies            |\n| [Element] Desktop/Web    | ✅          | ✅                | widget            |\n| [Element] Android        | no autoplay | ✅                | widget            |\n| [FluffyChat]             | ✅          | ✅                | ponies            |\n| [Nheko]                  | ✅          | ✅                | ponies            |\n| [Schildi] Desktop/Web    | ✅          | ✅                | widget            |\n| [Schildi] Android        | ✅          | ✅                | widget            |\n| [mautrix-telegram-bridge]| ✅          | static image only | -                 |\n\nOther clients were not tested.\n(I am not assioted with Schildi, although they also love turtles)\n\nGif does not support semitransparent pixel, which probably leads to ugly effects,\nif the background of the client does not match the `transparent_color`.\n\n[Cinny]: https://cinny.in/\n[Element]: https://element.io/download\n[FluffyChat]: https://fluffychat.im/\n[Nheko]: https://github.com/Nheko-Reborn/nheko\n[Schildi]: https://schildi.chat/\n[mautrix-telegram-bridge]: https://github.com/mautrix/telegram\n\n\n\n## Requirements:\n* a Stickerpickerserver [msrd0/docker-stickerpicker](https://github.com/msrd0/docker-stickerpicker) or [maunium/stickerpicker](https://github.com/maunium/stickerpicker)\n* a telegram bot key\n\n#### Dependencies:\n* [libwebp](https://chromium.googlesource.com/webm/libwebp)\n* [rlottie v0.2](https://github.com/Samsung/rlottie/tree/v0.2)\n* [ffmpeg](https://ffmpeg.org/)\n* [cargo](https://www.rust-lang.org) (make)\n* [clang](https://lld.llvm.org/) (make)\n* [ldd](https://clang.llvm.org/) (make)\n\n### Configuration:\nYou need to create the following `config.toml` file (located at *~/.config/mstickereditor/config.toml*) and enter your values:\n```toml\n[telegram]\nbot_key = \"YOUR-TELEGRAM-BOT-KEY\"\n\n[matrix]\nuser = \"@user:matrix.org\"\nhomeserver_url = \"https://matrix-client.matrix.org\"\naccess_token = \"YOUR-MATIRX-ACESSTOKEN\"\n\n[sticker]\ntransparent_color = { r = 0, g = 0, b = 0, a = true }\nanimation_format = \"webp\"\n```\nThe `[sticker]` section is optional and can be left out.\n\n`transparent_color` is used as color for semitransparent pixel in `gif`s.\nThe field has no effect, if the sticker is not animated or will be converted to `webp` (default).\n`r`,`g`,`b` must been between 0 and 255 inclusive. \n\n`animation_format`: is used to convert the animated stickers to, you can either choose `webp` (default) or `gif`.\n\n## Installation:\n\nFor Arch Linux user or user of an Arch based distrubution an [aur package](https://aur.archlinux.org/packages/mstickereditor) is available.\n\nNix user can use the NUR package [nur.repos.linyinfeng.mstickereditor](https://github.com/nix-community/nur-combined/tree/master/repos/linyinfeng/pkgs/mstickereditor/default.nix).\n\nCurrently, there are no prebuild binaries available. So users of other platforms/distros must build mstickereditor by themselves. See below.\n### Building:\n\n Install the following packages. (I recommand to use the package managment system of your operating system):\n* [libwebp](https://chromium.googlesource.com/webm/libwebp)\n* [rlottie v0.2](https://github.com/Samsung/rlottie/tree/v0.2)\n* [ffmpeg](https://ffmpeg.org/)\n* [rust](https://www.rust-lang.org/tools/install)\n* [clang](https://lld.llvm.org/)\n* [ldd](https://clang.llvm.org/)\n\nTo build and install mstickereditor execute the following command:\n```bash\ncargo install --locked mstickereditor\n```\nMake sure that `~/.cargo/bin` is listed in the `PATH` environment variable otherwise, the `mstickereditor` executable can not be found.\nCheck out [rust doc](https://doc.rust-lang.org/cargo/commands/cargo-install.html) for more information about `cargo install`.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fluckyturtledev%2Fmstickereditor","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fluckyturtledev%2Fmstickereditor","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fluckyturtledev%2Fmstickereditor/lists"}