Contributing to TeleIRC
This is a guide on how to contribute to the TeleIRC project. It explicitly defines working practices of the development team. The goal of this document is to help new contributors get up to speed with working on the project. It is a living document and may change. If you think something could be better, please open an issue with your feedback.
Table of contents
Set up a development environment
To set up a TeleIRC development environment, you need the following:
- Nodejs (v10+ preferred)
- Telegram account
- IRC client (HexChat recommended)
- For docs: Python 3 (3.6+ preferred)
Create Telegram bot
Create Telegram group
Create a new Telegram group for testing. Invite the bot user as another member to the group. Configure the Telegram bot to TeleIRC specifications before adding it to the group.
Register IRC channel
Registering an IRC channel is encouraged, but optional. At the least, you need an unused IRC channel to use for testing. Registering the channel gives you additional privileges as a channel operator (e.g. testing NickServ authentication to join private IRC channels). See your IRC network's documentation on registering a channel.
Configure and run TeleIRC
env.example file to
Change the configuration values to the Telegram bot's tokens.
For more help with configuration, see the TeleIRC documentation.
Open a new pull request
These guidelines help maintainers review new pull requests. Stick to the guidelines for quicker and easier pull request reviews.
- Prefer gradual small changes than sudden big changes
- Write a helpful title for your pull request (if someone reads only one sentence, will they understand your change?)
- Address the following questions in your pull request:
- What is a summary of your change?
- Why is this change helpful?
- Any specific details to consider?
- What do you think is the outcome of this change?
Maintainer response time
Project maintainers are committed to no more than 10 days for a reply to a new ticket.
Current maintainers are volunteers working on the project, so we try to keep up with the project as best we can.
If more than 10 days passed and you have not received a reply, follow up in Telegram or IRC (
#ritlug-teleirc on irc.freenode.net).
Someone may have missed your comment – we are not intentionally ignoring anyone.
Remember, using issue templates and answering the above questions in new pull requests likely reduces response time from a maintainer to your ticket / PR.