Figure out how to make channel authorization step bulletproof #telepost
Fix 500 on publication #telepost
Rebuild channel endpoint #telepost
Add "Open in tab" action #telepost
Add Cyrillic support #telepost
Fix problem with upper case in username #telepost
Finalize marketing site #telepost
Disable channel options for time being #telepost
Add WIP label to the preview area #telepost
Refine approach to Firestore ids #telepost
Add label to empty blogs list #telepost
Get rid of non-essentials collections #telepost
Write copy for the landing #telepost
Make auth page look nice #telepost
Implement site deployment #telepost
Implement about block #telepost
Landing page prototype #telepost
Extract shared webpack config #telepost
Polish off admin layout #telepost
Implement sign out action #telepost
Implement default avatar #telepost
Make user menu look nice #telepost
Refactor settings form into a component #telepost
Implement menu with channels list #telepost
Use encrypted id for series to prevent collision #telepost
Fetch and save supergroup and supergroup full info on channel publication #telepost
Render link previews #telepost
Create shared config with URLs, keys, etc. #telepost
Detect subdomain using origin from config #telepost
Publish update messages both to production and staging #telepost
Implement admin redirection #telepost
Setup marketing deployment #telepost
Setup admin deployment #telepost
Filter out irrelevant messages #telepost
Describe MessageContent types #telepost
Make blog layout look nice #telepost
Render channel info in the layout #telepost
Rework channel endpoint to get data from Firestore first and only then fetch it from API #telepost
Update series when a new message update for a published channel is received #telepost
Use hashed start time of a series as the series id #telepost
Use compound message ids #telepost
Figure out wtf is wrong with Firebase #telepost
Fix blogs development environment #telepost
Fix ordering of the series list #telepost
Build blogs components #telepost
Fetch data from the web app on navigation #telepost
Render series item page #telepost
Implement server rendering for blogs #telepost
Setup webpack for server side rendering #telepost
Serve channels from subdomains #telepost
Embed username into the entry script and request data and render on the client #telepost
Make blogs request series by subdomain #telepost
Redirect to the blog after publication #telepost
Publish channel endpoint #telepost
Implement pending access step that observes the channel access state #telepost
Bootstrap pending access step #telepost
When a channel permission is changed, check if there is a draft for the channel and update it #telepost
If the authorized account isn't an admin, mark the draft #telepost
When a draft is created, check if the Telepost account already have the permission #telepost
Set validation on channel draft #telepost
Save channel draft and redirect to the access step #telepost
Render channel info during channel configuration step #telepost
Implement channel configuration step form #telepost
Ensure channel data when configure channel step it's rendered #telepost
Rewrite channel endpoint to fetch data from TDLib #telepost
Implement select channel step #telepost
Create select channel form #telepost
Bootstrap the select channel form #telepost
Return appropriate response when TDLib error occurs during a request #telepost
Search channel endpoint #telepost
Authorize admin app #telepost
Integrate Telegram & Firebase auths #telepost
Implement series item endpoint #telepost
Implement channel endpoint #telepost
Provide series endpoint #telepost
Generate series when a channel is registered #telepost
Sync Telegram data to Firestore #telepost
Deploy the client on Kubernetes infrastructure #telepost
Run Telegram client in cloud #telepost
Design prototype of the admin panel and settings #telepost
Design prototype of the landing #telepost
Prototype of Telegram events processor #telepost
Build container for the Telegram client #telepost
Make mockups of the blog themes #telepost
Group messages into series #telepost
Display messages fetched via API #telepost
Read channel messages as JSON and render stored JSON as site #telepost