Say hello to Telephant!

I've written a little Mastodon client for the Desktop - called Telephant - and am currently looking for beta testers!

Want to help out and don't mind compiling the app yourself? (Don't worry it's fairly straight forward and I've added detailed instructions to the README!)

Join me here:

Looking forward to hearing your feedback!

@fribbledom send this to @JM- she just posted to someone else that she enjoys computer tech, and helps her husband beta test the programs he writes. Hope you don't mind, BlueKitty.

@fribbledom Small feedback based on screenshot alone, I think it would look better if the "cards" had a slightly different background color, because having the same background but a drop shadow looks a bit suboptimal


Thanks Eugen, highly appreciate your feedback! You're probably right, I'll tweak the palette a bit.

@fribbledom I think a tiny bit lighter grey main background would give a better contrast with the darker grey of the toot cards indeed. Otherwise really nice, giving it a go (erm...) tonight :)

@fribbledom oh my goodness it's an actual native Go program instead of Electron?

I'm totally in :blobwoah:

@polychrome @fribbledom But the GUI uses QML, which means a full-brown JavaScript engine is still here, possibly with a Webkit engine...

On the other hand, at this point, I think it's safe to say that the old "Window" + "Widget" GUI toolkit is unsuitable for these applications, and QML is already 100 times better than Electron. So I'm in!


QML indeed comes with an ECMA compatible scripting language & engine, but happy to report no WebKit's involved here.

For handling the UI and its states I actually quite enjoyed using this approach. It's certainly a lot more flexible and less error-prone than doing it with (any toolkit's) widgets directly in C or C++.

The backend of the application is still entirely written in Go, of course.


@fribbledom @niconiconi @polychrome is i really less error-prone? AFAIK QML files must be loaded at runtime, and only then you'll discover errors like typos in variable names. Whereas the C++ compiler would catch that bug immediately.

@fribbledom Oh, first dev build is here? Wonderful, time to try it out right away!

Happy to see you went with Telephant.

@fribbledom Or I would, if I wasn't too stupid to get Go and Qt installed to build it.


Which platform are you on? Anything I can help with?

@fribbledom Windows 10, but I think it's just me being too stupid to follow instructions. The Qt installation already proceeded oddly and then pretty much every terminal I tried to use refused to run the commands specified in the readme.


I just built a Windows binary, which you could try.

Note: I haven't personally been able to run and test this, so it may or may not work. Let me know 😉

@fribbledom Thank you very much! I'll be giving this a go (hah).

I was actually just running through the steps one more time and this time things seem to be going better.

Although I've noticed an error showing up in the last step (i.e. build step) if you don't have Go or anything related installed and follow the README step-by-step.

I'll submit an issue about it in a minute, if you'd like. Can also specify here.


Issues preferably on GitHub, so I can track & coordinate development properly.

Highly appreciated!

@fribbledom Got it, will do. And fyi, the build you sent seems to be working on my machine.

@fribbledom I would like to try this out once I get time to sit in front of a computer. Probably not before tomorrow, though :/

@fribbledom I'm stuck at this screen, is this supposed to open a browser window?


I decided not to automatically open it, even though that may be a mistake. Not sure yet 😆

Click the label above the input field, it should open the authorization process in your browser.


Ok, time to gather some more information then:

Can you check the terminal if it printed out any error / auth URL there?

Which instance are you trying to connect to?

Do you have two-factor auth enabled?

@fribbledom here's the log getting to that point, lots of QT errors on mac (just using the terminal output)

Trying to connect to without 2FA, the "click here" doesnt even change the cursor or underline or anything


Ok, I see what's happening, I think: enter your instance URL including the scheme "https://".


Well, thank you! Thanks to your feedback I improved the error handling a bit and just pushed it to git!


Ok, I'm just improving the error handling for this dialog. Hang tight, should provide you with some more useful information in a minute.

@fribbledom I just wanted to mention how much I like the name Telephant! Glorious! I will check it out. :)


The specs are a bit light aren't they?
What I'm very interested about is granular local storage: being able to keep locally toots and media selecting them either by actions (favorites, bookmarks), timelines (all the "direct messages" or all the "home" or all a "list"), hashtags and accounts (all from fribbledom) and combination of those.
Also, granular bandwith and RAM consumption (but I guess that's much more work): checking updates more or less frequently, things like that.

@fribbledom I'll test as soon as I get to my lair :)
also I might help with Spanish translation

@wolfie In theory it already exists, but I still need to add the image assets for a light theme.

@fribbledom I hadn't heard of QML before, and like, having dug around the git repo, it's actually hella cool.


Looking forward to an .exe and an .app for MacOS.

Please be merciful with dependencies -- my Mac is on a not-very-new version of the OS because I have a bunch of weird music software that kinda needs it.


I haven't tried it, but iirc Pleroma claims to have an API compatibility layer. Sounds like it should work in theory.


Does it give you any error? I could alternatively provide a password-based login - even though I'd like to avoid that.

@fribbledom no. if i click the link to request a new token, i'll get a blank page. don't know, if pleroma uses another way to request tokens. but i don't think that it is a problem on your side. gonna take a deeper look into it.

@fribbledom how long did it take you to build this? :O
I'll test it tomorrow :)


It's hard to tell because I once started this project as a Twitter client, but abandoned it pretty quickly after they shut down all the APIs required to write one.

Checking the git history I've probably spent about an entire week of my life on it.

@fribbledom I had the greatest programming struggle of my life after trying to make an extremely simple mastodon app in python and gtk, I was hoping you were going to say two months or something :p

@kai @fribbledom it's not, at all :p
I'm not good at thinking of good first projects, because that requires you to know the scope of it in advance.
Also, it's hard to think of anything that is suitable for beginners as well as useable ^^
Maybe one day.

@fribbledom it looks like this isn't an electron app! Is that correct?

Sign in to participate in the conversation

Server run by the main developers of the project 🐘 It is not focused on any particular niche interest - everyone is welcome as long as you follow our code of conduct!