Personal Clubhouse automation with Clubhouse REST API and Google Sheets API

This was written by our wonderful customer Alexandre Lim.

 

I was searching for a tool to help with my productivity to get things done to advance in my personnal goals. I needed smaller and concrete actions to have a step by step process. I needed to store all of that somewhere, follow my progression and the possiblity to share it with friends.

In my daily work, I use Jira and at first I was thinking to go with it. But I wanted something more simple. I heard about Clubhouse and decided to try it. After a period of trial, it met my needs and I was impressed by their product so I started using it more seriously.

I stumbled in a situation where I wanted a book to read as an epic with the chapters's book as stories attached to the epic. If you have a lot of books, it becomes tedious to create the epic then all of the stories and attached it to the epic. Even with the duplication functionality. So, I needed to find a way to automate that.

And to my surprise, Clubhouse have an API and a good one that made automation possible.

Then came the project Clubhouse Automation

In the end, I came with the idea to combine with Google Spreadsheet. I write down the book's title and chapters in the spreadsheet and the app will get the data to create the epic and stories.

I also have a lot of articles to read. Again, I write them in my spreadsheet and the app will create associated stories. I can even share my spreadsheet for other people to write down an article that might interest me.

For now, I only want these two features but you can have as many features that will suit your needs.

The final step will be to deploy the app in GCP with a private Cloud Run and use Cloud Scheduler to schedule a job to completely automate the process. For example, it will be possible to have a job that will get the list of articles in the spreadsheet and create associated stories every two days. I'll only have to work with the spreadsheet and everything will be in my Clubhouse !

 

Features:

Book feature: Create an epic from the title of a book and the chapter's book as stories

Write in the spreadsheet the title of the book, the author and the chapters. The app will create:

  • An epic with the title of the book and the author in the description.
  • As many stories as their are chapters. Stories will be attached to the book epic.
  • The epic and stories will have "Book" label attached to them.

Note: For the moment, you will have to create or have a project called "Reading" in your Clubhouse.

Here's the spreadsheet template.

Articles feature: Create stories from a list of articles

Write in the spreadsheet the article's title, a description and the url of the article. The app will create:

  • As many stories as their are articles.
  • Stories will have "Article" label attached to them.

Note: For the moment, you will have to create or have a project called "Reading" in your Clubhouse.

Here's the spreadsheet template.

Development

Warning: It's not optimized for production YET. Code needs to be cleaned and tested.

I started with my template Express Starter.

Clone the project and create your .env file by doing a copy of .env.dist :

cp .env.dist .env

Install the dependencies:

yarn install

Launch the project in two consoles:

yarn watch
yarn dev

Now you have the app in watch mode running on http://localhost:3000/.

You'll have to complete the env variables with your settings:

CLUBHOUSE_API_TOKEN=
GOOGLE_APPLICATION_CREDENTIALS=[PATH]
SHEET_ID=

Use curl or Postman with HTTP POST to consume the API:

Note: If you don't know how to complete the two env variables GOOGLE_APPLICATION_CREDENTIALS and SHEET_ID I will (hopefully) soon write a series of articles to explain how I build the app.

Architecture

Didn't find what you were looking for?

New post
Would you like to add your +1 to this post?
0 out of 0 found this helpful

Comments

0 comments

Please sign in to leave a comment.