JFreegman/toxic

A Tox-based instant messaging and video chat client.

C

1,307

2,135 commits

updated Jul 14, 2026

See the code

README

Coverity Scan Build Status

Toxic is a Tox-based peer-to-peer messenger that provides end-to-end encrypted communications without the use of centralized servers. It supports text messaging, file sharing, 1-on-1 voice and video calls, private audio conferences, public and private text group chats, and a few built-in games you can play with your friends. Toxic requires no registration or setup, and is ready to use out of the box. Its interface is highly customizable to suit your preferences.

Toxic Screenshot

Installation

See the install instructions

Usage

As Toxic uses a text-based user interface, interacting with it involves a combination of navigation hotkeys and slash commands. For example, to navigate between open windows, use the ctrl+o and ctrl+p key combinations. Or to add a contact using their Tox address, use the command /add {ADDRESS} without the curly bracers. To see a full list of available commands and hotkeys, use the /help command or refer to the manual.

Toxic also has a number of run options. For example, if you want to use a different profile than the default, you can run toxic with the --file my_profile.toxic flag. Or to disable UDP/direct connections, use the --force-tcp flag. To see all available options, run toxic with the --help flag, or refer to the manual.

Settings

Running Toxic for the first time creates an empty file called toxic.conf in your home configuration directory (~/.config/tox for Linux users). You can use it to customize many aspects of the user interface, enable auto-logging, customize sound notifications, customize hotkeys, use custom names for your contacts, change the time format, and much more. You can view the example config file here.

Troubleshooting

If your default prefix is /usr/local and you receive the following:

error while loading shared libraries: libtoxcore.so.0: cannot open shared object file: No such file or directory

you can attempt to correct it by running sudo ldconfig. If that doesn't work, run:

echo '/usr/local/lib/' | sudo tee -a /etc/ld.so.conf.d/locallib.conf
sudo ldconfig
audiochat
decentralization
decentralized-applications
dht
dht-network
filesharing
instant-messaging
instant-messaging-client
ncurses
p2p
privacy
privacy-tools
security
securitytools
tox
tox-client
tui
videochat

JFreegman/toxic

A Tox-based instant messaging and video chat client.

C

1,307

2,135 commits

updated Jul 14, 2026

See the code

README

Coverity Scan Build Status

Toxic is a Tox-based peer-to-peer messenger that provides end-to-end encrypted communications without the use of centralized servers. It supports text messaging, file sharing, 1-on-1 voice and video calls, private audio conferences, public and private text group chats, and a few built-in games you can play with your friends. Toxic requires no registration or setup, and is ready to use out of the box. Its interface is highly customizable to suit your preferences.

Toxic Screenshot

Installation

See the install instructions

Usage

As Toxic uses a text-based user interface, interacting with it involves a combination of navigation hotkeys and slash commands. For example, to navigate between open windows, use the ctrl+o and ctrl+p key combinations. Or to add a contact using their Tox address, use the command /add {ADDRESS} without the curly bracers. To see a full list of available commands and hotkeys, use the /help command or refer to the manual.

Toxic also has a number of run options. For example, if you want to use a different profile than the default, you can run toxic with the --file my_profile.toxic flag. Or to disable UDP/direct connections, use the --force-tcp flag. To see all available options, run toxic with the --help flag, or refer to the manual.

Settings

Running Toxic for the first time creates an empty file called toxic.conf in your home configuration directory (~/.config/tox for Linux users). You can use it to customize many aspects of the user interface, enable auto-logging, customize sound notifications, customize hotkeys, use custom names for your contacts, change the time format, and much more. You can view the example config file here.

Troubleshooting

If your default prefix is /usr/local and you receive the following:

error while loading shared libraries: libtoxcore.so.0: cannot open shared object file: No such file or directory

you can attempt to correct it by running sudo ldconfig. If that doesn't work, run:

echo '/usr/local/lib/' | sudo tee -a /etc/ld.so.conf.d/locallib.conf
sudo ldconfig
audiochat
decentralization
decentralized-applications
dht
dht-network
filesharing
instant-messaging
instant-messaging-client
ncurses
p2p
privacy
privacy-tools
security
securitytools
tox
tox-client
tui
videochat

Project health

Overall

3.7/10

Maintained

1/10

Code review

0/10
OpenSSF Scorecard

Significant stargazers

Michael Vetter

233 followers · starred Apr 2021

Nicolas Pouillard

169 followers · starred Jan 2014

Vincent Bernardoff

325 followers · starred Apr 2024

Koz Ross

205 followers · starred Oct 2015