Skip to main content

One post tagged with "architecture"

View All Tags

· 3 min read

Intro

The tech stack for Easy Startup uses a lot of technologies, I will just briefly explain what I have used leaving the specifics of it to another blog post. My tech stack consists mainly of the following -

  • Backend
    • Java 17 (I love the language, I wanted a statically typed language and I have loads of experience with it building production systems and debugging all the random errors that can creep up)
  • Database / Storage
    • MongoDb (My database of choice, I can change schema on the fly without having to worry about breaking anything)
    • PostgresSQL (For analytical reporting and aggregation since mongo is not built for this)
    • SingleStore (Still checking this out for now since the managed version is pretty expensive for me now)
    • Linode Object Storage (Its fully S3 compatible so I can switch provider later) (Its configured but I currently dont use it for anything, might start using it once I add the export functionality)
  • Frontend
    • NextJs (react) Yeah I know I don't use any server side rendering feature but I like the opinions of nextjs and hence I have stuck to it
    • Tailwind (What would I do without you )
    • Docusaurus (Static site builder for landing page and marketing site, this blog, documentation etc. I tried vue for a while but I am sorry vue fans I'll stick with react)
  • Deployment
    • Ansible (I have a simple bash script set up which does the git commit, git push, and triggers ansible deploy with just one command ./build_deploy.sh)
    • Git (Best version control system invented)
  • Reverse Proxy / CDN / Certificate
    • Nginx
    • Cloudflare (CDN + Certificate generator) free plan as of now (will switch cdn once I get more users)
  • Text Editors / IDE
    • Intellij Community Edition for Java with the VimPlugin
    • Vim for all server configs and editing anything on the fly (I spent around 2 hours learning vim and I can say that it was one of the best times ever spent, vim makes normal editing so much faster and efficient and I dont have to every worry about editing directly on the server)
    • Vs Studio Code for NextJs
    • Sublime Text for pretty json, mongo updates and for in general pasting any random stuff
  • Laptop
    • M1 Macbook Air 16GB ram 256GB ssd. This is literally the best purchase, I couldn't have been happier with a purchase, ironically it costs less than my iPhone which I use much less than my air. This device runs everything a programmer wants flawlessly and super fast, my i9 16 inch Macbook pro overheats, throttles and starts crying out loud even if I run a simple Intellij Java program, this air flies through anything and it doesn't even have a fan. 🙌 Thanks apple for making this wonderful magic device. I run hundreds of chrome tabs, java, intellij, mulitple node servers for react, visual studio code, postman, sublime text, iterm, spotify, spark (for mail), bitwarden, twitterdeck and many more apps all together and this beast doesn't even skip a beat.