powerbase · 2022Research and Prototyping

2 min read

Before jumping into development, I did some research first, helped in ideating about the initial version of the app, and did some rough sketches regarding the app. Based on our conversation and the client's pitch, I did a lot of stuff which some of them are:

  • Creating the Project Overview.
  • Researching similar products.
  • Researching what tech stack to use - pros and cons for each tech.
  • Creating Architecture Proposals.
  • Researching about input validations, Elasticsearch, etc.
  • Creating an Entity Relationship Diagram.
  • Designing an MVP user flow.

In short, I helped shape the product in design and technical terms. Evaluating our choices, we've ended up with a Rails and ReactJS tech stack. We decided to go with Rails for its maturity, large community, and because it is one of the main stack of Tonic, which means other Tonic members can jump into the codebase.

Moreover, I've created quick and small prototypes to test ideas. One of which is in regards to connecting to a remote database. For connecting to databases, I suggested using Sequel for connecting to remote databases, and sticking with Active Record for the local one. Also to prevent hitting the database connection limit, I've immediately disconnect the connection after queries.

In regards to CRUD, manipulating the remote database is not a problem if we are going to build a SQL GUI client like TablePlus. However, Powerbase is gonna be more than just a GUI tool so things will get tricky.