One-click Social Media Client

Reddit: Dashboard and details view

Twitter: Dashboard and details view

Tumblr: Dashboard and details view

Youtube: Dashboard and details view

 

GNU Emacs as a Social Media Client

Consumption of social media typically necessitates few repeated actions - like, share, comment and follow. If these actions are assigned to convenient keyboard keys, the consumption becomes easier - no more pointing and clicking tiny icons. Here's an attempt to unify this experience using GNU Emacs, tumblesocks and oauth2.
 

(require 'tumblesocks)
(require 'oauth2)
 
;; service below is one of twitter, reddit or tumblr
(setq tumblesocks-service-conf
   (service . (client-id secret-key redirect-url))
 
 
Use M-x sm-twitter , M-x sm-reddit, M-x sm-youtube or M-x sm-tumblr. First time, it will open a browser window. You'll need to login to the service and allow the permissions in following window. Then you'll be redirected to a URL. You'll need to copy the code (code=value#_) in the URL without the # and _ . Then you can use l for like, r for reblog, b for viewing a different channel, g for refresh, RET for detail view, n for next post, p for previous post etc.
 

Goals

  • Keyboard based action
  • Page navigation instead of endless scroll
  • List view (for home and timelines) and detailed view (for threaded discussion)
  • On demand image zoom
 

Concepts

Sites use different terminology for some concepts. Here are few of them
  • Channel - sub-reddit, blogs or timelines
  • Like: Upvote
  • Share: Reblog, retweet
  • Comments: Notes, replies
     

Code

  • https://github.com/atamariya/tumblesocks
  • https://gitlab.com/atamariya/emacs/-/blob/dev/lisp/wid-edit.el (Tree widget)
  • https://gitlab.com/atamariya/emacs/-/blob/dev/lisp/net/oauth2.el (Oauth2 commit: 5d54ed16363d27b14f533b6e2755ccacc46b8038) 

 

Comments

Popular posts from this blog

GNU Emacs as a Comic Book Reader

Tinylisp and Multi-threaded Emacs

Data Visualization with GNU Emacs