20
65 Comments

What tech stack are you using?

For myself it depends on the project but lately was playing with the following:

Frontend
* Javascript/Typescript with NextJS, React and MaterialUI

  • Backend *
    • Django with Django Rest framework and PostgreSQL
    • Go with Gin, Gorm (using PostgreSQL) and GraphQL
    • Kafka for events

What tech stack (programming languages, frameworks, databases, ...) are you using?

  1. 6

    Elixir with Phoenix and Liveview for backend and frontend. Tailwind for CSS, which compliments Liveview perfectly. I almost never write any JS or CSS anymore, unless I need something like a particularly fancy transition or that's client-side only like webrtc.

    1. 2

      Interesting. Sounds like LiveView is a lot more mature than when I first looked at it (I'm using Elixir only on the backend). If I were starting today, I'd seriously consider it over the mess that the front end Javascript world is.

      1. 3

        I've successfully built multiple apps with it now, the latest being a client call center and ticketing system for a school board transportation company. It worked beautifully (and deployed on Windows Server 2012 no less!).

  2. 6

    keenforms was built with
    -Ruby on Rails
    -React
    -Heroku

  3. 5

    Frontend:

    • jQuery
    • TailwindCSS
    • SCSS

    Backend:

    • Ruby on Rails
    • Postgresql
    • Hosted on Heroku
  4. 5

    Rails, Phoenix, Turbolinks, Stimulus.js.

  5. 5

    Backend:

    • node.
    • python.

    Front end:
    Bootstrap and jquery (yes you read that correctly).

    The backend is an api so frontend can be changed anytime and can be web, desktop or even mobile.

    I didn’t want to spend time doing frontend properly since I’m building the MVP.

  6. 4

    Backend:

    • Rails
    • Postgresql

    Frontend:
    Next.js

  7. 4

    Frontend

    • React.js
    • Sometimes NextJS & TailwindCSS

    Backend

    • Node.js w/ Express & Firebase Login
    • DB: AWS DynamoDB or Firebase Firestore
    • Other various AWS services
    • Sometimes Lambdas or Firebase Functions
    1. 3

      What's your experience with Firebase vs. AWS? I'm a Firebase user and know very little about AWS, and was wondering if you see any obvious pros/cons comparing the two. Thanks!

      1. 4

        At this point, I have a lot of code I've re-used over the last 5+ years, so it's hard for me to really think back about the "getting started speedbumps" I faced.

        I typically use Firestore when I need a multi-user event-driven UI, and I use DynamoDB when I need large amounts of data. I also typically pair DynamoDB with ElasticSearch when I need good search capability (never got into the whole Aloglia fad unfortunately).

        I used AWS Cognito really early on and had a bad experience with it, so I typically use Firebase Auth. I really should set aside some time to go back and re-examine Cognito now that it's ironed out the major issues.

        As far as lambdas go, I really like working with Serverless, but unfortunately, I've only used it with AWS Lambdas and not Google Cloud yet. Again, more due to habit. I actually just deployed my first Firebase Function recently thanks to @jakeprins https://serverless.page project.

        In fact, Jake's boilerplate project is greatly influencing a number of my choices recently. It's really well documented and has practically taught me Firebase Functions, Next.js, and TailwindCSS over the last couple of days.

        1. 2

          Thanks for mentioning my project. It's great to hear you like it!

          Let me know if you have found things you would like to see improved ;)

        2. 1

          Thanks for the detailed feedback, much appreciated! I really like Firebase but I’d like to learn AWS so I have an alternative and not be tied to one vendor.

  8. 4

    I like the ol tried-and-true Rails stack. Stupid enough to go fast, smart enough to scale out to a team IF you have the dough. I do some react/redux too but that's pretty much a net negative, I just like messing around with stuff.

  9. 4

    Frontend

    • JS, React, TailwindCSS, TailwindUI

    Backend

    • GraphQL
    • DynamoDB
    • C# or JS for Lambdas
    • And AWS as this is entirely serverless
  10. 3

    At Keypup we use the following:

    Frontend:

    • React

    Backend:

    • Rails with graphql-ruby for APIs
    • Postgres
    • Redis

    Platform:

    • Cloudflare for traffic management & routing
    • Cloudflare worker to host our SPA (React)
    • GCP Cloud Run for runtime
    • GCP Pub/sub for cross-component communication
    • GCP Cloud Tasks for background jobs
  11. 3

    I was using Django (w/ REST Framework) and PostgreSQL, along with React/Next.js, but found this setup to be more complicated than I wanted. Particularly, the frontend was something I didn't love, so we made the decision to switch.

    We're now using Ruby on Rails (still with PostgreSQL) with Turbolinks, Stimulus.js, and StimulusReflex, so we don't sacrifice too much on the UX, while still having the reactivity that a SPA offers.

    There a few complex components that I made in React that would be hard to convert over to server-rendered views, so I just took those and inserted them into the Rails views, which was a lot easier than I thought it would be.

    Though I love Django, I prefer the new stack so much more. The reduced complexity goes a long way as an IndieHacker and has made it easier to write tests, deploy, etc.

  12. 3

    Ruby on Rails with Stimulus JS

  13. 3
    • Hasura for (mostly) automatic and very performant GraphQL on top of Postgres. Hasura is a game changer for CRUD apps.
    • Elixir for handling business logic that can't be handled by SQL/Hasura, background jobs, integrations, ect. Massively scalable.
    • React with TypeScript on the frontend. I plan to replace this as soon as there's a solid functional language and large ecosystem for WASM.

    Like others have said here and elsewhere, use the stack you know. However, run far away from nosql (use a solid relational database) and skip Node on the backend (unless you just enjoy endless pain).

    1. 2

      Heard from Hasura a few times now, I really need to check it out now. How does Hasura handles object level permissions?

        1. 2

          Thanks, wow that's a really nice feature +1

          1. 1

            You can get started quickly with Hasura on my service at: https://nhost.io

    2. 1

      What kind of pain using node in the backend? I’m curious to understand your view.

  14. 2

    OyeStartups is built with :

    Frontend
    -Vue
    -Nuxt

    Backend
    -Laravel/PHP
    -DB : MySQL,MongoDB

  15. 2

    RemoteRetro is built with:

    Backend: Ruby on Rails, Postgres
    Frontend: React, with small parts of Bootstrap getting phased out.
    Infrastructure: Heroku, memcache

  16. 2
    • Clojure/ClojureScript
    • Re-frame/React
    • PostgreSQL

    A few other things too but those are the big ones

  17. 2

    Frontend:

    • Gatsby

    for styling and components I'd go in this order from "Fastest/Easiest" <---> "Most Configurable for Bigger Projects"

    • Chakra UI
    • Tailwind
    • Theme-UI

    Backend:

    • Hasura
      or...
    • Django
  18. 2

    SkinSort is all Rails & TailwindCSS. I use PostgreSQL and Redis on the backend as well, and use S3 for images.

  19. 1
    • Flutter: mobile application
    • gRPC + GraphQL + NodeJS: microservice
    • Kafka: mesage queue
    • Debezium: change data capture (CDC)
    • PostgreSQL + MongoDB + Redis
    • Neo4j: graph database
    • Docker & Docker Swarm
    • Google Cloud
  20. 1
    • Rails
    • postgresql
    • Heroku
    • Stimulus.js
    • TailwindCSS
  21. 1

    Frontend: React.js / Next.js / Tailwind
    Backend: Node / gcloud
    Instrumentation: GA / FullStory / Splitbee (new)
    Project: Linear / Sentry / LogRocket

  22. 1

    Frontend

    • Javascript / Jquery

    Backend
    *Php and SQLITE

  23. 1

    Backend monolith (Node, Nestjs) with some serverless functions (Google cloud functions) sprinkled in. Firebase for persistence.

    View layer is rendered using vanilla js template strings. Tailwindcss all the way!

    Spent a lot of time messing around with React and Nextjs but the poor bundle size of all the Firebase client libraries plus the slowness of SSR wasn’t worth it for a simple CRUD app.

  24. 1

    Splitbee is built with typescript from front to backend :)
    React + Node + Postgres. We've published an article about the detailed stack: https://splitbee.io/blog/tech-stack-of-splitbee

  25. 1

    Frontend used to be some JavaScript/typescript with NextJS or React but after doing more development with Go, I have found that having a really basic frontend (HTML+CSS served through Go) makes me move so much faster for a simple website.

    Frontend
    JavaScript/typescript with NextJS or React (for complex dashboards)
    Simple HTML + CSS with something like Tailwind and Alpine.js if I need interactivity.

    Backend
    100% Go - amazing language to work with
    PostgreSQL
    RESTful API

  26. 1

    Django, Tailwind, Turbolinks, StimulusJS.

    I have a starter template for this stack: https://github.com/danjac/django-saas-starter

  27. 1
    • ReactJs/Sass/jwt
    • Node/Express/MySQL/PHP/Python
    • OVH VPS Ubuntu/Debian
    • Mailgun for email, stripe for payment.

    Will clarify I mostly develop applications. If it was just a website I would opt to do some kind of template with responsive styling (bootstrap type eg. mobile/desktop/etc) then see about implementing some visual testing to make sure it looks good on most devices/resolutions. WDIO is pretty cool or just Selenium on its own.

    Also I have mac/windows so can emulate devices for further testing. OP testing is something like device farm... But that's overkill.

    Standard Linux OVH for server, haven't really built anything many people wanted/needed scale yet. SystemD to persist node.

    Experimental/side:

    PWA from ReactJs with Dexie(IndexedDB wrapper)

    Electron/ReactNative. Electron was simple I pretty much just built the RJs and loaded it up in Electron. I was able to build an a basic cross platform app with RN but it was a little rough/needed more work on my part.

    Have I actually made any money from projects as a business/not a freelancer? No... Sad

    Further adding onto this ramble. I have not setup Jenkins before personally but that is nice to have. At the very least tests, unit, possibly snapshot. It is overkill/mostly matters on complexity of app/working with many team members. Just something I've dealt with at work, ux/translations teams, etc... main thing I'd like to have is regression testing so that I can verify new features don't break old ones. But again overkill, only matters if you have a big enough app. But it's nice to start early if possible.

    Making my own living is a goal but I have not reached it yet.

  28. 1

    Laravel, Vue, MySQL, and redis are what I primarily use for T.LY and Weather

  29. 1

    GRABstack:

    Go to my terminal
    Randomly cp -r from a different project
    Arm myself with all of the useful bits of code from that project
    Buckle up and start programming

  30. 1

    Vue + Firebase for my current project. Literally all I need.

  31. 1

    Frontend:

    • Reactjs
    • Nextjs
    • Styled-components

    Backend:

    • Python w/ Django
    • PostgreSQL
    • Celery
    • Redis
    • Various AWS Services (S3, CF)
  32. 1

    Frontend - Tailwind, Bootstrap, JS and jQuery
    Backend - Flask, MySQL, Postgres, Mongo
    Server - Linode, AWS

  33. 1

    Currently:

    • React (styled components, swr, nextjs)
    • Python Django (Django Rest Framework)
    • Postgres
    • AWS (sometimes containerized, sometimes serverless, depending on the use case)

    Future:

    • Hoping to see how I can learn more about no-code tools to validate my ideas before possibly building it out with the above stack.
  34. 1

    Frontend

    • React
      Backend
    • Node.js
    • GraphQL
    • Jenkins
    • AWS
    • K8
  35. 1

    Vue + Nuxt + Tailwind + Express

  36. 1

    That's pretty close to my dream setup, except instead of the entire backend chunk, I lean on AWS Amplify inside of my Next.js apps.

  37. 1

    Frontend:

    • React + TailwindCSS

    Backend:

    • Node/Express with Firestore
  38. 1

    Firebase, Nest, Angular and Stencil :)

  39. 1

    Frontend

    • Boostrap
      Backend:
    • Python
      • Django

    For my personal blog :

    • Hugo
  40. 1

    Frontend :
    Nextjs + TailwindCSS
    Backend
    Firebase or StrapiJS

  41. 1

    Backend: Nginx, PostgreSQL, Python, Flask
    Frontend: Mostly basic HTML with some Svelte and VueJS mixed in

  42. 1

    Just finished a project with:
    Vue 3/Typescript/Firebase
    Here it is: https://app.taskomoro.com

  43. 1

    Frontend:

    • React
    • Java JSP

    Backend

    • Java Spring boot

    Database:

    • oracle
    • mysql
    • firebase

    Server

    • Google cloud
    • Aws

    Mobile

    • React Native
  44. 1

    For https://www.thisismylaunch.com/ MVP I used 11ty static generator, TailwindCSS and Airtable.
    I’m also working on fully featured version and for that I’m using Elixir, Phoenix and TailwindCSS.

  45. 1

    Front end: React
    Backend: NodeJS Lambda’s and various other services. ESB etc.
    Storage: DynamoDB, S3

  46. 1

    Frontend

    • NextJS for landing
    • SPA React App for app / Relay

    Backend

    • Nodejs / Postgraphile for client server
    • NestJS for worker server
    • Bull for queue management

    Infrastructure

    • AWS CDK
    • RDS Postgres
    • Elasticache - Redis
    • Cognito for authn
    • SES for email
    • ECS/Docker for servers
  47. 1

    Boostrap + php + wordpress
    Old, but still working great

  48. 1

    I'm building Nodewood, a web app starter kit, so the "correct" tech stack is a very important choice to me and to my users. What is "correct" in this case? Well, in short, saves you time getting started, saves you time maintaining, just plain makes it easier to develop and grow a web app.

    • Front-end: Webpack, Vue, Tailwind. Vue + Tailwind make it easy to move quickly and keep that pace.
    • Back-end: Node.js & Express. Staying with Javascript on the back-end is critical, because it means that the models, validation, and libraries that you write can be used on the front-end as well, drastically cutting down development time and ongoing maintenance costs.
    • Database: PostgreSQL. It works, it's fast, it's performant, you can add on things like TimescaleDB to turn it into a time-series database, it has JSONB fields for when you need to store less-structured data, it's just great.
    • Development: Docker. Being able to quickly spin up a common development environment with one command is a real time-saver.

    My aim is that you can save weeks or months of development time (depending on the scale of your app) and then end up with a modern stack with good tooling

  49. 1

    I've been working on my static site generator https://mkws.sh lately so plain CSS and Js. If I were to start a new backend project, I'd probably go with Go or plain shell scripts via CGI tbh for an MVP.

  50. 1

    Frontend

    • Vue
    • Buefy (Bulma) or Vuetify
    • Threejs (3D)

    Backend

    • Laravel (PHP) or Nodejs
  51. 1

    Frontend:

    • Vue.js

    Backend really depends on the technology and client I am working with. Most of the time it is Node.js hosted on various platforms. But I am also working with PHP in the most current project.
    When working with Node.js I use fastify as the server framework.
    Databases: Dynamodb and Postgres (with TypORM as a framework in Node.js)
    And for my bigger projects I am going AWS all the way, as I have the best knowledge in that.

    For exception logging I am using honeybadger.io

Trending on Indie Hackers
How I grew a side project to 100k Unique Visitors in 7 days with 0 audience 49 comments Competing with Product Hunt: a month later 33 comments Why do you hate marketing? 28 comments My Top 20 Free Tools That I Use Everyday as an Indie Hacker 15 comments $15k revenues in <4 months as a solopreneur 14 comments Use Your Product 13 comments