I wonder what technologies we're using for front/back end.
I use mostly Laravel or NodeJs for backend and Vue or classic pure HTML output (for SEO purposes) on front-end.
No backend. Last year I went serverless and I'll never go back (unless absolutely necessary). Use a hosted database and backend-as-a-service (lol, I know) instead. I use MongoDB's Atlas and Stitch platform, for instance, which gives me a client library for storage, user auth and lambdas, and that's all I need. The advantages are HUGE: no time wasted setting up servers/vms/etc, and its all FREEEEEEE until you reach scale!!
Interesting... can you provide a link for the service?
Yep, Atlas: https://www.mongodb.com/cloud/atlas
A lot of people say "whatever, you can do the same thing in AWS" and I say, uh, yeah, but I don't want to have to set it all up myself. This saves me a crazy amount of time. I can have a fully-functioning CRUD-equivalent backend and database up and connected to my app in literally minutes.
For Stitch I see 25GB/month free. I wonder how many daily visitors are you able to handle for free.
Thanks for the links. AWS UX is a nightmare. The service is top-notch but they need definitely to do something with UI/UX.
Oh, haha, I almost forgot I actually wrote an article about exactly this: https://blog.swymm.org/post/how-to-serve-a-fully-functional-web-app-100-free/
Interesting post. Will consider to try it and move some projects over to Mongo (from MySQL)
Used to use Java (most experience) but switched to Elixir and have fallen in love. React for frontend.
Elixir is such a breath of fresh air.
It really is. It’s been a game changer for me.
The productivity of frameworks like Rails without giving away the web performance of Java or Go. The community is small, but responsive - and the decisions that go into the language are clear and thought-out.
I see. Is Elixir a language+framework? Trying to understand the comparison to Rails.
I got you. As far as comparison goes - Elixir is the language, like Ruby, and Phoenix (which I use) would be the equivalent of Rails. I definitely recommend looking into it! :)
I think I gave Elixir a shot one day when I was bored but didn't feel the need to switch so I stuck with what I knew, LOL. Node/React is my first preference these days.
Node.JS & MongoDB for Supertools with some vanilla JS sprinkled on here and there. In my day job I mainly work on a complex React SPA and while I do love React & components – going pure server-rendering on this project has saved me soooo much time! And I like how performant the end result is – this kind of speed is hard to achieve with client-side rendered applications above a certain a complexity.
Yes, I've worked with TypeScript several times in the past. For this project, I wanted to keep the setup as simple as possible (it's early stage software). Not having to have a build step was a huge win in terms of simplicity on this project for me. I do love TS for the easy refactoring though. ^^
I'm honestly not sure where/who my competitors are. If you find them, please let me know! :D
Hmm. Am I a dinosaur, or is no one using Python/Django?
That's what I use.
Another +1 for python/flask :-)
We use Python/Flask. See my response :)
There was Python mentioned already. So you're not alone 😏
Python + Flask for backend. Svelte and Tailwind for frontend.
Just playing with Svelte a bit. Seems to be very promising and better structure than Vue. At least for me. Tailwindcss is great also.
Ruby backends (Rails or Hanami or Sinatra, depending on what I'm working on). On the frontend, mostly pure JS, and I'm giving a go to Stimulus at the moment, but not on any real-life project yet, though.
Laravel for backend, MySQL for DB, Bootstrap + JS (vanilla) for front end. I used to get very tied up in learning emerging technologies which would stall my progress in actually building something - I remember investing a lot of time some years ago in learning Backbone.js and Ember.js, which are now hardly mentioned (https://trends.google.com/trends/explore?date=all&geo=US&q=Backbone.js,Ember.js,Vue.js). Now I go for a 'boring', well-supported stack. New technologies are nice but the majority are fleeting. PHP and regular ol' JS have stood the test of time.
I can just agree with you. I currently doing some NuxtJS stuff but mostly prefer standard old techniques.
I've had a lot of experience with different backends (PHP, Python, Node, Rails, Elixir) and frontends (plain PHP, flash, iOS, jQuery, Backbone, React, Vue) over the years.
At this point, I'm pretty much all-in on Elixir, as should be clear from my current indiehack. I like it because it offers similiar productivity as languages like Ruby but similar web server performance to Golang or Java. The Phoenix framework is somewhat like a purely functional equivalent of Rails or Laravel. The ecosystem is much smaller, but it's particularly strong at dealing with evented real-time interactions, chat, WebRTC and pretty much anything involving web sockets.
Handling millions of visitors a month is doable on a bottom-tier $5/month VPS.
On the front-end, I prefer to keep it as simple as possible.
It's great to hear that its able to handle millions of requests on a basic VPS
I haven't written a line of php in years. And that's probably why I haven't written anything worthwhile :) php is so quick to set up and learn. Every indie hacker should use it!!
People say PHP is old and out of interest already but actually the version 7.x is faster than Ruby and Python. And Laravel is just an awesome framework. Easy to work with with tons of packages available.
I'm not a fan of PHP, especially pre v5, but Laravel is a very, very well designed framework. I think it's the right choice for a lot of projects.
I agree absolutely!
And, my favourite bit, you just put the files on some shared hosting set your version and it runs fine. Can't say that about any other language.
First, I'm a huge fan of PHP and it's my language of choice.
I'm so sick of the language debate. I have a number of friends who look down on PHP because it's not [react | angular | python | java]. The reality is, your users don't know or care what language your app is written in and as long as your page load is decent they'll stick around to learn about features and functionality.
You need to use what makes you productive. I don't like PHP, but there's nothing wrong with those who do.
Ruby on Rails on the backend and plain ol' Bootstrap/jQuery on the front end
I've tried most back end and front end frameworks, but for my use case (fast MVPs) everything else seems overkill
Same here. Good, beautiful and cheap. Does the work like a charm.
Fullstack dev from Boston here - I use Vue on the frontend, Go on the backend, and PostgreSQL for the db. Been using this combo for the past few years and will continue to use it going forward, as it is my favorite stack that I've ever used. I love Vue, Golang is awesome (love the typing security, hadn't used a typed backend language before), and PostgreSQL is a nice little upgrade for me from MySQL
Previously I've used: Vue/NodeJS(Koa)/MySQL, VanillaJS/PHP/MySQL, jQuery/PHP/MySQL (my first stack - ughh - not knocking anyone tho - do your thing baby).
Vue + Go + Postgres for me too! Favorite stack :)
I've never tried PostgreSQL. Used to use MSSQL, then moved to MySQL.
Honestly MySQL isn't too bad at all - PG just solves a few of the annoying edge-case handlings and adds some nice features.
For our templates https://www.saasforge.dev we use:
Your landing page looks awesome man!
Thanks! I'm not a designer at all so I had to put a lot of efforts (and tries) to make it look better (than previous versions that were pretty ugly :)
This is really slick!
I started my SaaS in 2012. At the time I was laughing because all of my competitors were using old school web forms and flash for all of there software. I was using the latest and “best” technology. I used C# MVC, and jQuery.
Now I’m the old guy. And I understand why my competitors at the time weren’t jumping to rewrite everything to the latest technology. It sucks having a huge codebase on dying technology.
I’m gearing up for a rewrite in 2020. I believe I’m going to use a .Net Core backend, with React on the front. Everything will still be hosted in Azure .
Microservices will allow rewriting in "chunks" and various services can easily be running various languages. If you're going to rewrite, consider splitting the app up into many small chunks to make future growth easier.
That is the plan! The cool part with C# is that you can deploy a whole monolithic application to AWS or Azure and it will split up the functions into Microservices.
Rails backend and simple HTML/SCSS/jQuery front-end. It's the easiest and quickest way for me to get to MVP. I don't know what it is about Rails but it also helps me connect the dots in the backend - e.g. being able to create relational data easily. When i've used Node in the past with a framework like Express I've struggled to connect the dots in my head.
Python (async using Uvicorn and Asgineer) for the back. A mix of vanilla HTML/CSS/JS + Python for the front. (yes I use Python for the front-end, via PScript :D)
This is really cool! I've never heard of Uvicorn/Asgineer.
I'm a Django developer -- are there any good resources to learning about python async web dev? And is it production ready?
Yes, it's production ready. Uvicorn is written by the same person who's behind the Django rest framework. I think they're working on making Django async too. I got interested in web servers not too long ago, and jumped into Uvicorn straight away - I build a thin layer on top to make it easier to work with (Asgineer).
To get started with asgi, have a look at e.g. Uvicorn, Starlette, FastAPI, and Responder.
(yes I use Python for the front-end, via PScript :D)
(yes I use Python for the front-end, via PScript :D)
Gotta respect that rebellious spirit!
Cool. I've used Python for microservices and some Mac menu bar apps.
I have been using https://nextjs.org for a few projects. It does server-less and server-side react very easy. Checkout my template here https://github.com/alepacheco/landing-template
You can also deploy them to Zeit now for free and it includes a free CI and automatic deployments from GitHub.
I do very little ReactJS stuff but this template is a big time saver for those who use ReactJS.
Thanks, it's a WIP so summit an issue if you think something should be added
I wonder if you use Server or serverless for this. https://www.indiehackers.com/post/34b48b11d6
I use zeit.co now with that and makes server less endpoints. In the template the api endpoint is using golang
Did you stick with the free plan on this?
Yeah, at least for now
Laravel and VueJS
Love this combination!
So many keywords on this thread that I hear about for the first time. God, I really need to quit my corporate job, I feel like a dinosaur
We have a backend built on Elixir + Raxx
The front end is sveltejs.
Next.js / React for frontend. It has server rendering out of the box.
Backend it depends on project. If it’s cataloguey / not very technical , I just use a headless CMS like GraphCMS / Contentful
If it’s technical, Node.js with either Postgres or DynamoDB.
Next.js is awesome. Using it with zeit.co is a delight.
Zeit 💩all over now.sh! It used to be such a joy prior to that change.
What's the thing you don't like about now.sh?
It used to be zero-config to begin with and some minor customizations could be made in the config for prod deployments. It took all of 30 seconds to get things up and running and scaling. All I had to do was type "now" in the folder I wanted to deploy. This also supported docker, so that was really nice too.
In v2 they forced everyone to use cloud functions and stopped supporting node deployments. Configs weren't optional any longer.
The biggest issue I ran into was that I convinced all my clients to migrate to now.sh, but a year or so into it stopped working. They wouldn't allow new deployments (if I recall correctly) and were phasing out v1.
I use mostly Phoenix Framework with good old HTML/CSS.
When I want to build as fast as possible, I use Clojure(script), Reagent, PostgreSQL, and AWS because it's what I have the most experience with. Even if I don't want to build fast, I'd probably reach for this stack.
Work: Laravel + blade / Vue.js
Personal: PHP (no framework) + React SPA
Laravel 6.0 rocks! 👏
For the backend its a combination of PHP and C++
Frontend is mostly pure HTML/CSS and JQuery
Do you mean some special C++ written modules for PHP?
No its two separate projects. PHP is the for the API to the website and the C++ is what I call the engine. It has a small little HTTP REST API inside it that receives HTTP requests from various libraries which then get processed adds them to a queue. It does some other stuff as well such as housekeeping, triggering alerts, generating/sending reports etc
Pretty complex stuff.
For our latest project zubbit.io we have kept it simple (not a framework in sight), and gone with Apache/MySql/PHP backend, and PHP/JS/jQuery UI/HTML frontend.
Swift + Kotlin for mobile frontends and serverless backend AWS lamda, Netlify for marketing site. I will introduce Realm and the sysnc service to the stack once iOS is out of beta.
Clojure and clojurescript, best stack ever.
Nextjs (so reactjs)
For the DB:
Good combination. Interesting to see you use a different approach in dev and production mode.
Since FireBase is free for X reads and Y writes, I try to minimize that. So Every Sunday or whatever I populate the DB with the data I've collected manually (That's my modus operandis with chooseyourplant.com)
On the other hand, Since I did not want to decide the DB because me me that's a Detail Implementation, I chose to use local files such as JSON. It's comfortable for me.
I then created a small SDK which gets Data from different places depending on the Mode (DEV \ PROD)
That makes sense. I was thinking between MongoDB Atlas and Firestore
well, I haven't tried mongoDB Atlas but, fireStore is Simply amazing and I know nothing about it.
It's super fast and you can easily write scripts with your main language to write/read etc..
Will probably go with Firestore as the Atlas free tier is probably overloaded for production purposes and may be slow.
For InspectCompany.com I am using:
Running fully on AWS?
No, I am only using DynamoDB on AWS, for the servers I'm using Hetzner for now (it's a German provider)
Cool. I'm also using Hetzner. Unfortunately, they don't have a data center in US. This is the only thing that prevents me to use them for my sites with US traffic.
Straight up MEAN.
Is this enterprise like stuff you do?
Complex app with big data requirements.
I like structure and OOD opinionated structure.
We've taken great care that:
Was asking because you use Angular ;)
I do like it.
Sometimes the simple things are harder...but overall very maintainable, fast and scalable.
Quickly easier for complex projects.
Back-end nodejs, asp.net core or contentful if it's something simple, front-end Angular. Doing both with typescript yeah that's the life I choose :) And for cloud mostly Azure or Heroku.
Interesting combination. I'm also looking for some free headless CMS solution for tests.
gatsbyjs + contentfull = magic :)
Just checked their free plan but I don't know what the limitations are.
I built earlybrd.io with Bulma CSS/HTML on the Frontend with Flask for routing and postgres for state. All running on docker with a docker scraper container that runs on the backend and feeds postgres. Fairly simple and works.
So you use Python in the backend. Played with Flash a bit, I just like NodeJS/Express more because I'm more experienced with it.
Yep! I may pick up Vue since it's used a lot but I've also tried a lot of different frameworks and landed with Flask because it's widely used and I'm most familiar with python! Use whatever helps you ship
Exactly! Use what you're familiar with.
I'm using Laravel and Vue.js. It's the stack I'm most experienced with.
Same here :)
Rails and React. So far this covers all the requirements.
I see you generated your blog in Jekyll. Did you try Hugo?
I read about Hugo. However I would use http://cryogenweb.org/ next time, which is written in Clojure, to reduce the number of programming languages I need to handle.
just one of the options we are using https://bejamas.io/blog/case-study-emerging-dynamics/
Angular for frontend, Rust Actix with Diesel and Postgres for Backend.
frontend - angular/typescript
backend - golang/postgresql (sometimes, php, python)
Sometimes I wish I would have chosen Go for backend :D :D :D
I'm going full serverless for my next project. AWS lambda with go, dynamoDB and VueJS frontend served by CloudFront.
Local development can be a bit of a pain and the ecosystem is not that mature. I wouldn't really recommend it, but for me half of it is just learning it.
Rails or laravel + PostgreSQL are definitely very good choices
Secondarily GraphQL, Postgres, Postgraphile, Typescript, Docker, AWS, Auth0
Fully microserviced, considering micro front ends too, also considering some services in go
Elixir / Phoenix on the backend.
Emberjs in the frontend.
Of all the tools I’ve used over the past 12 years they are the most enjoyable to develop in.
The clarity of functional. The pattern matching is yummy. Ember felt big to get a strong grip on but over the hump feels super fast and fun to use. Might go Phoenix live view if I have to do a project that doesn’t merit its own SPA.
React | NodeJS | Firebase | (TBD - GCP / Linode / NodeChef) for Testerbot
I've been implementing the UI in Shopify Polaris which is fantastic, but unfortunately, there are limitations to customizability. I'm thinking of switching to React Bootstrap, but might end up using Bulma as I really like it. There are no React libs that are up-to-date so I might just create my own and opensource it later.
I'm giving Ruby on Rails a go, with RDS and Auth0 for user auth,
For https://storycreatorapp.com/ I am using https://zeit.co, it's serverless and you can write Lambda functions that execute in node.js. I am also using another BAAS called https://www.graph.cool/ this is perfect for getting setup with grahpql, having a database and strong data modeling out of the box without any setup.
There is absolutely no way I am going back. This is the way to go.
Have been using Zeit myself but never heard of graph.cool. I'll check it out.
I'm running Nuxt (Vue) for front end SSR and Adonis.js on the backend (a Node MVC framework like Laravel). Highly recommend Adonis for any JS developers.
I'll always encourage finding something you're comfortable with and something that enables you to move fast.
Personally that's nuxt.js with prisma/graph.cool or something even more simple like airtable.
Angular CLI for the frontend and .Net Core for the backend (APIs / micoservices). Will deploy it on AWS. Why Angular and .Net Core? Because I have most experience with these two and I don't want to slow down MVP development learning new tech stack.
Rails backend and jQuery on FE. Considering using React if my FE gets more complex
PHP & PostgreSQL as well as some Firebase for auth.
You mean React native for mobile one?
Nope :) Full ReactJS.
I use Laravel + (Vue or React SPA) + MariaDB
Spring Boot (Java) for backend, PostgreSQL for database and Angular JS for frontend
Where you host your backend?
Depends, but Heroku, AWS OR Google Cloud.
PHP & Polymer
Never heard of Google Polymer project before.
The truth is, that Polymer was cutting-edge when I started working with it and got finally dropped by Google team.It's usable, web components are cool, but you'd have to overcome some issues to build a serious PWA with it. Now Google is supposed to be working on Polymer successor, their Material Web Components for Web, but the work is slow and judging by their github repo comments, components are also... let's say, not complete.
I'm playing with NuxtJS as it's based on VueJS which I use. The advantage is great SEO support and PWA support. I was able to achieve 90 - 100 score in Lighthouse.
How about YouTube? ;)
For my newest project I am using:
Backend: Express.js in connection with Next.js
Database: PostgreSQL (connected with Sequelize)
Frontend: Server-side rendered React with Next.js
I plan to make a project template out of this at some point with easy deployment to DigitalOcean, but not sure yet. Everything is based more or less on these templates:
Is this mostly for SaaS like stuff?
Yes. But that is also what I want to focus on in the future :)
90% of us here on IH probably ;)
I use Vue.js + Node.js + MongoDB
Mainly Go for back end except when i need to use scikit-learn, and vuejs for the front.
Interesting combination. Go is super fast.
The main reason i choose go are:
This comment was deleted a year ago.
SpencilJS seems to be interesting.