Telegram bot to convert images in the format required to be used as Telegram stickers (512x512 PNGs)
- How to use the bot
- How to create a new sticker
- How to set up the project
- How to run the bot locally
- How to launch the bot using Docker
- How to contribute to the project
- Hacktoberfest
- Useful resources
- License
You can use the bot going here: start it, and you can now send it the images you need to convert.
Based on what you send, Stickerify will answer the following:
- the converted image, if you sent a supported file (currently
.gif
,.gifv
and.webp
files are not supported) - an error message, if you sent an unsupported file
- an informative message for any message without a file
- Chat with Stickers, and use it to create a sticker pack
- Ask Stickers to add a new sticker
- Use Stickerify to create the proper file for your sticker
- Forward Stickerify's message to Stickers
- Choose an emoji representing your sticker
And it's done!
- Install Maven and JDK 19 (or higher)
- Clone the project and move into its folder
- Run the command
./gradlew build
- Import the project inside your IDE as a Gradle project
- Ensure your IDE is correctly configured to use a Java 19 (or higher) JDK
After you successfully set up the project, you will have to go through the following steps:
- Chat with BotFather and ask it to create a new bot
- Copy the token it provided you and either:
- set it as the value of a new environment variable named
STICKERIFY_TOKEN
- use it as the return value of the method
getBotToken()
insideStickerifyBot
- set it as the value of a new environment variable named
- Run the
Main
class to start the bot, it will be now able to answer messages in Telegram
- Install Docker
- Prepare the Docker image either:
- building it passing the token (
{{TOKEN}}
) retrieved from BotFather with the command:docker build -t rob93c/stickerify --build-arg STICKERIFY_TOKEN={{TOKEN}} .
- pulling the image from Docker Hub:
docker pull rob93c/stickerify
- building it passing the token (
- Now you just need to run the Docker image:
docker run rob93c/stickerify
Take a look at this project's contributing guidelines here.
Do you have any question? Feel free to open a new discussion.
Hacktoberfest is an event aiming to encourage people to contribute to open source projects every October. This project adheres to this initiative and welcomes any hacktoberfest-related improvement!
If you would like to improve Stickerify as part of this event, first read the contributing guidelines and then feel free to open a new issue and/or pull request.
If your pull request represents a valid contribution to the project, it will be marked as hacktoberfest-accepted
, therefore counting towards the 4 contributions goal.
See the LICENSE file for license rights and limitations (MIT).