Leverage open source & start your product building journey...

Leverage open source & start your product building journey...

In continuation to my last post some time ago here are some tools/projects I recommend some of which I haved used to build some projects in minimum amount of time and with minimum cost for some startups.

often the fundamental questions founders are facing is whether we should focus of refining business strategy or to focus on having application ready for sudden surge of users. My take always has been on focusing to refine strategy first hence the idea here is to keep the operation cost of tech related stuff like cloud provider cost/other services like hosting etc to very minimum so money can be better utilised to validate and iterate through product rather than putting too much money in thinking of scaling the product right from day zero.

What good is a dream of mass producing airplanes if there is no long enough runway to takeoff your first plane...

Also this is applicable primarily for very early stage startups that are either being ran by single or group individuals who are running and spending money from their own pocket to start and build a very first draft for idea validation or for as part of first iteration of their already validated idea.

PS there will be some proprietary names below as some solutions require cost that cannot be avoided viz sending emails/sms/whats app text or media management etc will never be free forever and so there cannot be good production grade open source alternative to such services

Core tech stack needed for basic functional requirements

  1. hasura - A graphql engine that gives you ready made apis built based on your DB schema it supports variety of databases from relational to nosql dbs. Also hasura lets you control access to each row/column in db based on user roles and can easily be integrated with any authentication system that works on JWT tokens for authorization.
  2. remix.run or nextjs.org - A web framework that lets you build performant UI applications and REST/GQL apis
  3. Astro.build - For building your product website that explains your product or about your company. This is recommended cause your product site does not change often and mostly has only chages to content and not to code. Also your product site should be fast enough and astro is a framework built for content driven sites. If you choose next.js then you better deploy to vercel cloud but its high on cost but vercel has really good support for next.js as next.js is actively being maintained and built by vercel only
  4. Choose any design system from this list for building excellent responsive UI - I will highly recommend material-minimum or github primer
  5. Containerise everything (obviously through docker) and deploy it to either ramnode or vultr So you are not locked in with one particular cloud provider. These are the cheapest cloud providers I have been using.
  6. For DB get it via any cloud provider AWS/GCP/Azure etc. Digitalocean is good and cheap if postgres is something you are looking for production grade DB. Postgres also has a module called postgis which lets you query data like you do in mongodb based on geometry centered around lat/long point. If you have to many relations please evaluate graphdb like neo4j etc. where you can set properties on relations too.
  7. Keycloak - An open source authentication/authorization management system primarily build on openid and oauth2 also useful for basic user management too like impersonation, custom roles, RBAC etc. It also supports other authentication mechanisms like SAML/kerberos so if in future business asks for SSO across enterprises that can be offered to customers as a offering. it also supports multi tenancy for authentication.
  8. Progressive web app - A good web based alternative supported by almost all latest modern web browsers to build web apps that feel like native mobile app and are fast enough to cater your early audience. Its set of standards that you will have to follow as developers on top of your already existing web site. This is good cause you get most of basic mobile apps like functionality in web app viz location access, push notifications etc So you don't have to maintain separate code bases for web and native apps or look for solutions that lets you do both with single code base like flutter/react native etc which at some point of time asks you to maintain some spaghetti code eventually. Google's Workbox project is good abstraction layer for any one to build a progressive web app.


For non functional requirement

but must haves for either debugging or analytics standpoint

  1. Signoz - Monitoring and alerting along with logs/metrics/traces. Or use traditional ELK stack
  2. Plausible analytics - A good basic analytics for understanding how users view your product and how are they interacting
  3. posthog - For advanced product analytics that also lets you do A/B testing
  4. Cloudflare -

- For object storage like images/videos etc

- For DDoS protection

- For CDN for your static assets

5. Thumbor - For processing image management so you deliver optimum image size/aspect-ratio/format to users based on user device/network etc. Cloudinary is another freemium alternative if you are looking for both image and video management

PS I dont sponsor or promote any of the products mentioned in this article.

Other must have services for better startup

for running your business and keeping developers happy. But for which there are either no or close to no open source alternatives

  1. Twilio - For sending emails/sms/whats app texts/push notifications/web push etc
  2. Mattermost - Slack alternative for internal chat system
  3. Open project - Project management tool An alternative to Jira
  4. appflowy - Documentation management system which lets you keep all product and other documents in one place.


Pure tech tools

Needed primarily to avoid regression bugs and/or avoiding mechanical tasks

  1. Github / Gitlab - Git based source version controlling and for CI/CD pipelines
  2. Playwright - For writing automated e2e tests
  3. Browserstack - For testing across number of devices and browsers
  4. nx/turborepo - For speeding up development environments and build processes
  5. Conventional commits and tools - Convention for auto generating release notes
  6. standardjs or ts-standard that takes away your hassle of setting up some often used tools and making sure every developer has same setup. Just use this and you wont face any issues on coding style


Additional good to haves

These tools can be used by both developers and product managers to build documentation of how code/architecture is and/or to build product requirements/mind map of how product is going to evolve

  1. obsidian - build a visual knowledge graph that helps people understand things better. This will help you co relate & visualise different sections/pages of your already existing documentation.

For intermediate level startups

If you have raised funding and looking to hire IT/HR/Recruitment/Accounting teams. Please explore rippling before hiring too many folks it offers nice services.

That's all. For now...

I will be writing more in this series about what you should focus and what you should not in early stage of you product building journey. So stay tuned.

Thank you if you have read it till here. Let me know in comments if you know any better alternative for any of the mentioned above or if I am missing any important aspect of building startup tech stack quickly.

Wish you all the best in building a startup and bringing your idea to life. Feel free to reach out to me via DMs for any kind of help/suggestions/feedback also even if you have any feedback/suggestion for me you are most welcome.

要查看或添加评论,请登录

社区洞察

其他会员也浏览了