In this article, I will share the tech stack I used to build my startup, Omkar. My startup consists of several components, including Frontend, Backend, Blog.
By learning about my tech stack, you can gain insights that will assist you in selecting the tech stack for your startup.
My Application Omkar Cloud is a full stack website with a Blog, developed using technologies like Django, Next.js, and Kubernetes
It is a People Search Engine that you can use, for example, to find people working in a company or CEOs of companies in an industry. Think of it as an advanced version of LinkedIn Search.
The Most Important Technologies in my Tech Stack are Kubernetes, GCP, Elastic UI, Next.js, GitHub Actions, and Django.
Here is a breakdown of my Tech Stack
For the Frontend I have used Elastic UI, React and Next.js
I have used many Component Libraries in the past, such as Bootstrap and Material UI. However, based on my experience, I have found the Component Library of Elastic UI to be particularly impressive. Elastic UI is really beautiful Component Library.
Therefore, I have chosen Elastic UI as my UI framework
Also, I had learnt two frameworks to create websites which are Svelte and React.
I wanted to use Svelte as it is much more concise than React. However, since the Elastic UI Library was not available for Svelte, I had no choice but to choose React as the only option available to me.
Next.js is a framework built on top of React.
I think of Next.js as a framework for a framework 😂.
Next.js simplifies the usage of React and provides additional features. Therefore, instead of using the bare create-react-app setup, I opted to use Next.js as it makes working with React much easier
For the Backend I used Django powered by SQLite Database
I have learned various backend frameworks such as Express.js and Nest.js, but Django stood out as my favorite.
When working with Django, I found that I could accomplish tasks with significantly fewer lines of code compared to Nest.js or Express.js.
Django's conciseness is similar to Sanskrit Language, in Sanskrit you can convey your thoughts in very fewer words compared to English or Hindi Language.
Hence, I chose Django for its conciseness and simplicity.
For the database, I had the option of using either SQLite or PostgreSQL. I opted for SQLite due to several reasons.
- Most Importantly for me as an Indian is that it is SQLite is cheaper than PostgreSQL since in SQLite there is no need to purchase a separate server.
- It allows developers to start developing faster since PostgreSQL requires spinning up a server, whereas SQLite is file-based
- It is easier to view table contents using SQLite Browser application in SQLite compared to PostgreSQL
Although, it can be argued that PostgreSQL is more Scalable but for a Start Up, SQLite does the Job Perfectly. Also, in future you can always migrate to PostgreSQL if necessary.
To create the blog for my website, I utilized the tailwind-nextjs-starter-blog developed by Timothy Lin. It is a beautiful blogging platform built on Next.js.
For deployment, I used Kubernetes, GitHub Actions, and Google Cloud Platform (GCP).
I wanted to host the frontend, backend, and blog on a single domain, namely 'www.omkar.cloud' at different paths. Additionally, I needed to store the SQLite database file in storage.
Kubernetes provided a convenient method for orchestrating these needs. So, I used Kubernetes.
To automate the deployment process, I utilized GitHub Actions. With this setup, I could easily deploy a new version of my application by simply pushing the code to the master branch.
I chose GCP as the platform to run my entire Kubernetes stack. Google products have a reputation for quality, and GCP proved to be reliable and suitable for my needs. It costs me 2900 INR or $35 per month to run my full Stack.
I used Google Analytics to track my website as It was the analytics software I was most familiar with.
For creating a professional email address like
email@example.com, I utilized G Suite. I opted for G Suite due to my familiarity with the Gmail interface and my resistance to change.
Google Search Console
I utilized Google Search Console to monitor the search ranking of my website, omkar.cloud, on Google.
I used NameCheap for buying domain name of omkar.cloud. I was satisfied with Name Cheap’s services.
In short, I used the following technologies in my tech stack for omkar.cloud:
- Elastic UI
- GitHub Actions
- Google Cloud Platform (GCP)
- Google Analytics
- G Suite
- Google Search Console
Overall, I am very satisfied with the tech stack of omkar.cloud.
If you are creating a startup and considering the tech stack to use, based on my experience, I can confidently say that if you base your tech stack on mine, you will have a solid technological foundation for your startup.
I am curious to hear if you have any questions regarding the tech stack, so please feel free to ask in the comments.