Open Website
WARNING! Clicking "Open Website" will launch a third-party app, use at your own risk. We do not recommend logging in with your main account.

Testing and Issues

You can test this app and submit issues during the testing period of the JavaScript Contest, Stage 3 contest.

Entries with serious issues will not be able to win the contest, but even minor issues might be important for overall results.



Many parts of the application were rewritten from scratch (including MTProto layer). It has dramatically improved memory and CPU consumption.

Third round features:
1. Mobile version
Sidebars and chat messages are adapted for one column layout. Emoji/Sticker/GIF panel displays at the bottom of the screen.
2. Emoji, stickers, and GIFs
Sticker search and trending with adding/removing installed sticker sets, animated stickers are played on hover, to reduce CPU and memory usage.
3. Recording voice messages is supported natively on all platforms (you may still need to enable MediaRecorder on Safari IOS)
4. Search for chats
Implemented like on provided mockups.
Sent with ❤
5. Shared Media and Gallery
All tabs loaded on-demand, current playing audio is displayed at the top of the page with highlighting on click.
6. Audio and video streaming
Almost full support in all compatible browsers. If the browser doesn't support streaming - the file will be downloaded and played as usual.
7. Archive
Was supported even in the previous round. Smashed some bugs, should work as described.
8. Folders
Displayed in scrollable (with mouse wheel too) panel. Pre-fetched at the launch of the app. All adding operations supported.
9. All polls types implemented. Quiz with timer, explanation and results too!
10. Search inside a particular chat works like on provided mockups. One small note: we forgot to add highlighting, sorry for that
Sent with ❤
1. Calls
Call anyone from your browser tab. Since most tglibvoip implementations don't support WebRTC, the app uses a bridge that helps to transfer data to and from other devices.
To be transparent:
- the bridge receives encrypted data from WebSocket and reflects it to destination using UDP (or in reverse). All it can see is garbage data.
- you can check source code here (NodeJS)
- setting to change default bridge address can be found in General Settings sidebar. You may host your own instance if you don't trust ours
2. Wallpapers
Replace that boring chamomile with something that you like more. Currently selected wallpaper will have a blue border in settings. Pattern backgrounds are also supported. Small neat thing: GIFs can be used as background too!
3. Support for all message types (basic for some). Added this round: dice, phone calls
4. Forwards
5. Emoji suggestions like on Desktop
Sent with ❤
Known issues
- Sometimes, peer name and avatar is not displayed
- Stickers are not displaying in Safari
- Voice messages are not played in Safari on IOS
- Icons in media viewer are obscured by backdrop, but still working
- Changing playback position to unloaded portion in audio is not supported.
Sent with sadness :(
Some of the application functionality isn't working properly on Safari IOS, we aware of this. The reason is that we don't have polyfills for it, we simply forgot to connect them, sorry for that. We should include a polyfill for webp support (few lines of code), ogg player/recorder (we use it in phone calls, so it will take few minutes to connect it to voices).
It's heartbreaking to see, that Safari with lots of unfixed bugs, poor support for new APIs, and slow development cycle becoming the new Internet Explorer. We're sorry if you had a bad experience in our app on Safari due to that, so we decided to provide you with polyfilled version with stickers and calls:
Sent with sadness :(
You have not added any comments yet...
by rating


Fair Mammoth Aug 18, 2020 at 06:33
Unfortunately, the speed of the app you submitted is below our expectations on mobile devices. There are numerous imperfections in contest task implementation, including addressed critical issues, which have prevented the app from being promoted to a higher place, despite several advantages (like calls, QR login, backgrounds). Not all of the earlier identified issues were fixed.

1. Critical issues:
– The app returns an error when the correct 2FA password is entered;
– Chats context menu are not optimized for iOS (Safari);
– Chats context menu are broken on Android (Chrome) – they appear for a second with a glitch, then disappear;
– Videos and GIFs playback fails on iOS (Safari). Certain stickers fail to render;
– Certain GIFs are black and fail to send from ESG (emoji, stickers, GIFs) panel on iOS (Safari);
– The app has serious performance issues when opening chats on Android (Chrome);
– UI issues when sending media on Android (Chrome) – entering caption or sending media cause layout glitches;
– Recorded voice messages on iOS (Safari) are broken – they fail to play on official apps, like TDesktop;
– Stickers are broken on iOS (Safari).

2. Medium to minor issues:
– Logout causes error 403 to appear;
– Incorrect animation when the chat list is being loaded;
– Performance issues when media in ESG panel and Shared Media screen is loading;
– Profile screen is opened instead of a chat when jumping from People tab;
– Voice messages ending is always cut when recorded on Android (Chrome);
– GIFs are cut in ESG panel on Android (Chrome);
– Sending sticker closes the ESG panel.

3. Task II issues:
– Navigation buttons are missing when using gallery view;
– Missing streaming support on iOS (Safari);
– Not possible to create a folder on iOS (Safari) due to missing button;
– When searching by date in chat, jumping to the very first message in the chat fails;
– Archive cannot be used on Android (Chrome) due to broken context menus;
– Layout issues with polls on Android (Chrome).
Samsung Galaxy S9 (Android 10); iPhone XS (iOS 13.6); macOS 10.15.5; Chrome 84.0.4147 / Safari 13.1.2.
Fair Mammoth Aug 20, 2020 at 21:24

Проблема воспроизводится нестабильно, после неправильно введенного пароля и его последующую замену на правильный. В ряде случаев после ввода верного пароля и ошибки "Invalid SRP ID provided" невозможно завершить процесс входа в аккаунт.
macOS 10.15.5 Safari 13.1.2.
Tall Tiger Aug 20, 2020 at 23:48
Благодарю что ответили на мой вопрос!
Fᴏʀᴅᴇɴ Jun 21, 2020 at 22:50
For some reason, the input fields are not in the middle of the screen
Yandex Browser / Windows 10
Tall Tiger Jun 23, 2020 at 12:19
Thank you for your report! Sorry for this oversight, just one redundant CSS line 😅
It takes an eternity to update chats. Animation it’s nice though.
iPhone/ Brave browser
Tall Tiger Jun 23, 2020 at 12:13
Hello! Thank you for the report. Yes, updating current chat may take more time than it should take, sorry.
When logging in, pressing a letter key will lead to weird behaviour.
Expected: Nothing happens. The keydown events are ignored.
- Refresh the page
- Select any country
- Highlight the field for your number and press for example the key with the letter 'd'
-> The input will be cleared.
- Select any country
- Add more numbers to the +..
- Select an other country
- Highlight the field for your number and press for example the key with the letter 'd'
-> The number you had with the first country will be restored

Nitpicky detail from the "attention to detail"-category...
Desktop/Windows 10/Google Chrome 83.0.4103.106
Tall Tiger Jun 23, 2020 at 12:10
Hello! Thank you for the report.
Captain Awesome Jun 22, 2020 at 15:50
i couldn’t get in via QR the first time, i recorded a video
then tried again but already got AUTH_TOKEN_EXPIRED error
no media viewer animations in chat and sidebar
layout has become better than in stage 2, but there are still a lot of minuses
GIFs do not work in chat, they just do not start, they are blurry
audio does not switch to next in sidebar or chat
audio has no progress bar in the sidebar
round videos have no progress bar
many albums are not displayed in the chat, either are displayed incorrectly or with a split error
downloaded file can be downloaded many times
Chrome 83.0.4103.106, Win10 64bit, res 2560x1440
Tall Tiger Jun 23, 2020 at 12:09
Thank you for the review, you did really good job!

– QR probably got broken after the login was rewritten from scratch, sorry.
– We should have implemented animations, agree.
– Sometimes browser closes socket connections randomly to prevent whatever it wants to prevent. Probably responses for the unloaded media are stucked in such moments, we should fix it in MTProto layer.
– Not sure what you mean by "can be downloaded many times".
Captain Awesome Jun 22, 2020 at 15:50
if you add a contact to the included chat folder and add it to your excluded chat, it will be in two lists at once, this is wrong
the sidebar media blinks black when switch between dialogs
chat media blinks black when switch between dialogs
sometimes if you quickly try to close the sidebar 2-3 times - it will generally disappear and you only need to refresh the page. attached screenshot and video
when entering the chat it is impossible to type msg until you click on the input field
if you quickly scroll up (mouse3), then the content does not render, you need to wait a while
when scrolling up the chat, the scroll sometimes a little jumps down
when you receive a new message and go in to read the chat, it’s not always below and you don’t see this message from the person
Chrome 83.0.4103.106, Win10 64bit, res 2560x1440
Captain Awesome Jun 22, 2020 at 15:50
the application is well optimized, on average, a tab consumes 350-450 mb of memory, sometimes it rises to 600-700, but after a while it clears. it's good!
unfortunately, when you quickly switch between loaded dialogs, such as the Durov channel, etc., a delay of 1-2 seconds occurs, most likely this happens with a lot of media content.
ripple effect slows down, triggers with a delay, dialogs can open with a delay
sometimes messages are loaded for a long time and are not rendered on the screen when switching to the dialog, only the last message is visible. through time the rest appear
often, if you pass the quiz test, when the next message arrives, the chat does not scroll down, and only part of the message is visible
Streaming audio does not work, you cannot switch to the right place. and if the song was rewound during the download, you will not be able to start it somewhere again in the place that has already been rewound
Chrome 83.0.4103.106, Win10 64bit, res 2560x1440
Tall Tiger Jun 23, 2020 at 14:28
– We wanted to achieve 100-200mb maximum, we failed.
– The delay is caused by deleting messages. Algorithm is slow, yes, but it allows to do the job right, thanks to it GC can also do it's job and result you described in first issue. Yes, it must definitely be optimized, we already have ideas how to do it.
– Streaming audio works, but it does not allow to seek through timeline, issue exists, sorry.
Captain Awesome Jun 22, 2020 at 15:53
the video opens for a long time, video streaming does not work well, but there are tumbnails
if you open a dialog where, for example, 80 unread messages, it will immediately drop you to the very bottom and read all the messages ..
if I voted in the quiz - it can freeze and there will be a timer 0-00, and there will also be the opportunity to vote in it. attached screenshot
if you hover stickers in the popup in order for the animation to turn on - they blink
stickers not animated in popup, sidebar, chat.
emoji panel opens blank, only 5 stickers
cannot open a set of stickers from the sidebar. - videos and screen here.
Chrome 83.0.4103.106, Win10 64bit, res 2560x1440
Tall Tiger Jun 23, 2020 at 13:57
– Video streaming enabled only for files > 4mb. Video player size was broken in one of latest commits, we simply didn't see it.
– Agree, we forgot to fix this. (it costs few lines of code, and was actually implemented in 2nd round)
– It's more about synchronization between client and Telegram servers. It takes some time to update the poll to close. Telegram won't allow you to vote in closed poll
– Sticker blinking is a side effect of optimization, that replaces animation to it's thumb, there are hacks to avoid it, we didn't use them at that time
Yandy Silva Jun 30, 2020 at 17:21
Hello, I found two things that I can not do and if it works normally in the app. The first is that I have several groups and I keep accumulating messages, some 10 messages and others become 300 messages, when I open one of the chat does on the last message received and not on the last read so I lose messages. Also some of them are in English; Which I do not speak then makes it more difficult for me to go to the last received. This is part of the second difficulty: placing your finger on the text to be able to copy it and make the translation, the globe appears with the options but goes immediately, I can't even finish a word, it's like turning on and off the light. I tried holding my finger on the text or dropping it just appears and remains the same. And it takes time to upload the images and videos, otherwise fine. Thank you
Oleg Illarionov Jul 23, 2020 at 12:00
permanent freeze after login in «adding chats» screen
iphone X, safari
Oleg Illarionov Jul 23, 2020 at 12:01
The scroll is buggy, no proper workaround for this safari issue is implemented.
iphone X, safari
Night Dragon Jul 29, 2020 at 18:26
scroll is also buggy on chrome, some stickers are not loading
chrome 84.0.4147.89, Mac OS
Night Dragon Jul 29, 2020 at 18:30
you must hold button to record voice messages, it's not good solution for desktop
chrome 84.0.4147.89, Mac OS
Night Dragon Jul 29, 2020 at 18:32
Poll button in dialog
chrome 84.0.4147.89, Mac OS
Night Dragon Jul 29, 2020 at 18:38
It's impossible to send video
chrome 84.0.4147.89, Mac OS
Night Dragon Jul 29, 2020 at 18:39
fully-fledged emoji is not supported
chrome 84.0.4147.89, Mac OS
Night Dragon Jul 29, 2020 at 18:41
stickers are not loading
chrome 84.0.4147.89, Mac OS
Night Dragon Jul 29, 2020 at 18:47
No Shared Media section
chrome 84.0.4147.89, Mac OS
Night Dragon Jul 29, 2020 at 18:49
It's impossible to create or edit folders
chrome 84.0.4147.89, Mac OS
Night Dragon Jul 31, 2020 at 13:10
it's impossible to login on mobile safari, t.flat is not a function
Iphone 8 , 11.4.1, safari
Nobody added any issues yet...