atTalk - Encrypted chat client
Let's chat!
Last updated
Let's chat!
Last updated
© 2023 Atsign
For the final example we have at_talk, which is a fully end-to-end encrypted chat application in less than 300 lines of code. There is nothing pretty, its just a command line app, that takes the Unix/Linux command talk
to a global level.
The command talk
allows people on a Unix/Linux machine to IM each other, at_talk allows anyone with an atSign to talk with each other.
This code is in a separate repo so once again in VS Code click the "Clone Git Repository" button. The enter:
Like before, you will get asked if you want to run pub get
and say yes or if you prefer you can open a terminal window and type:
This as we know pulls in the needed libraries and the code will loose all the red underlines as those libraries are loaded.
At this point we can open two terminal panels as we have done before and run the at_talk code. You can run at_talk without any arguments and it will return some help:
From here you can split windows like before and run two at_talk applications and send messages to each other.
In the left window for example (subsitute your own atSigns!
In the right window, the same but in reverse.
In this session you can see the typed messages in white and th received messages in green with the prompts in red.
Unlike Linux talk, however these two atSigns can be anywhere on the Internet and communicating with Privacy, get a friend to run through the demo and use at_talk !
There are a couple of features, that are worth mentioning you can use the /
and then an atSign to change who you are sending messages to and yes you can message to yourself.
The other feature that has proved very useful is being able to "pipe" commands to at_talk. To do this you can compile the code to a binary using:
Now you can "pipe" the output of a command into the chat with the other atSign.
This prints the code of at_talk.dart into the receiving atsigns chat window. To our knowledge the is the only chat application that you can pipe things too!
If you go this far first thank you and second, please enjoy your continuing journey and raise issues and PR's to any of the repos!