My Tech Stack I've Used To Build 10+ Apps Over 2+ Years

Your Average Tech Bro
19 Apr 202408:35

Summary

TLDRIn this video, the app developer shares insights into his tech stack, focusing on Next.js for frontend development, Vercel for hosting, Planetscale for databases, and Clerk for authentication. He also discusses alternatives like Superbase and recommends PostHog for analytics, highlighting the importance of choosing the right tools for app development.

Takeaways

  • 😀 The speaker is an app developer with over 2.5 years of experience building web applications, occasionally dabbling in mobile development.
  • 🛠️ The speaker primarily uses React for the frontend of their apps and Next.js as the go-to framework, with a preference for the App Router since version 13.
  • 🌐 They host their applications on Vercel, a platform created by the creators of Next.js, appreciating its seamless hosting and deployment process.
  • 💾 For backend needs, the speaker uses PlanetScale as their SQL database provider, running everything on a serverless architecture to avoid managing servers manually.
  • 🚀 They mention Render as an alternative for hosting, which has been recommended by other developers and could be used for non-serverless applications.
  • 🙅‍♂️ The speaker expresses a dislike for dealing with AWS and GCP, preferring services that handle infrastructure and deployment for them.
  • 🔒 For authentication, Clerk is the chosen provider, valued for its out-of-the-box functionality and helpful UI components for user authentication flows.
  • 📈 Analytics are crucial for understanding user interaction, and the speaker uses PostHog, an open-source product analytics provider, for this purpose.
  • 🆓 The speaker acknowledges the importance of a generous free tier for new developers, noting that PlanetScale's recent removal of their free plan makes it less recommendable for new projects.
  • 🔄 They suggest Superbase as an alternative for new developers due to its open-source nature, comprehensive features, and continued generous free tier.
  • 📱 If starting from scratch or focusing on mobile apps, the speaker would consider React Native with Expo, despite having prior experience with Flutter and Swift.
  • 🔄 The preference for React Native is attributed to the speaker's familiarity with React, although they acknowledge that mobile app development is not their primary expertise.

Q & A

  • What is the primary focus of the video?

    -The video focuses on discussing the technology stack and tools used by the speaker to build web and potentially mobile applications.

  • How long has the speaker been developing apps?

    -The speaker has been developing apps for about two and a half to three years.

  • What front-end framework does the speaker use for web development?

    -The speaker uses Next.js as the go-to front-end framework for web development.

  • Why did the speaker choose Next.js over other frameworks?

    -The speaker chose Next.js because of its familiarity with React, ease of picking up Next.js, and having enough knowledge to reuse template code across apps.

  • What hosting platform does the speaker recommend for applications built with Next.js?

    -The speaker recommends Vercel, a hosting platform created by the creators of Next.js, for its seamless hosting and deployment process.

  • What are the downsides mentioned about hosting applications on Vercel?

    -The downside is that Vercel can get expensive once you exceed the free tier, particularly due to high charges for bandwidth.

  • What is the speaker's choice for an SQL database provider?

    -The speaker uses PlanetScale as the SQL database provider of choice.

  • Why did the speaker initially choose PlanetScale?

    -The speaker initially chose PlanetScale due to its incredibly generous free tier that offered a billion row reads for free every month.

  • What has changed recently with PlanetScale's pricing that might affect new developers?

    -PlanetScale has removed their free hobby plan, and the cheapest option now starts at $140 a month, which is quite expensive for new developers.

  • What alternative does the speaker recommend for new developers looking for a free tier?

    -The speaker recommends Superbase, an open-source Firebase alternative, for its generous free tier and comprehensive features.

  • What is the speaker's preferred tool for user authentication in applications?

    -The speaker prefers Clerk as the authentication provider for its out-of-the-box functionality and helpful UI components.

  • What analytics provider does the speaker use and why is it recommended?

    -The speaker uses PostHog, an open-source product analytics provider, for its comprehensive features including surveys, analytics tracking, funnel step-throughs, event tracking, and A/B testing.

  • What is the speaker's stance on using React Native for mobile app development?

    -The speaker would consider using React Native for mobile app development due to their comfort with React code, despite not being an expert in mobile app development.

  • What are the speaker's thoughts on Flutter compared to React Native?

    -The speaker prefers React Native over Flutter because they are more comfortable with React code, but they acknowledge that this preference might not apply to everyone.

Outlines

00:00

💻 Web Development Stack and Hosting

The speaker discusses their experience as an app developer, focusing on their choice of technology for building web applications. They primarily use React and Next.js as their frontend framework, noting the ease of transitioning from React to Next.js. The speaker emphasizes their preference for Next.js due to its features like server-side rendering and app router. They also mention hosting their applications on Vercel, highlighting its seamless deployment process and the ability to focus on product development without worrying about infrastructure. However, they caution about the potential high costs of Vercel once the free tier is exceeded. Additionally, they discuss their backend setup, using Planet Scale as their SQL database provider and a serverless architecture, which they find beneficial for avoiding server management.

05:02

🔍 Alternatives and Analytics

Continuing the discussion, the speaker addresses the removal of Planet Scale's free tier and suggests Superbase as an alternative for new developers due to its generous free tier and comprehensive features. Superbase is described as an open-source alternative that includes database, authentication, and serverless functions. The speaker then shifts focus to the importance of analytics in app development, recommending PostHog for its open-source nature and extensive features like surveys, event tracking, and A/B testing. They appreciate PostHog's ability to handle multiple aspects of user interaction analysis and its generous free tier. The speaker also briefly touches on their experience with mobile app development, expressing a preference for React Native over Flutter for cross-platform app distribution, despite not being a mobile app expert.

Mindmap

Keywords

💡App Developer

An app developer is a professional who designs and creates applications for mobile devices, desktops, or the web. In the video, the speaker identifies as an app developer with over two and a half years of experience, emphasizing their expertise in building web applications and discussing the tools and technologies they use in their development process.

💡React

React is a popular JavaScript library used for building user interfaces, particularly for single-page applications. The speaker mentions using React for the frontend of their apps, highlighting its significance in their development stack and how it serves as the foundation for their web applications.

💡Next.js

Next.js is a React-based framework that enables the development of server-rendered React applications. The speaker discusses using Next.js as their go-to frontend framework, noting its features like server-side rendering and app router, which facilitate a seamless development experience.

💡Vercel

Vercel is a cloud platform for static sites and web applications, known for its ease of use and integration with Next.js. The speaker praises Vercel for its seamless hosting and deployment process, allowing them to focus on product development rather than infrastructure concerns.

💡PlanetScale

PlanetScale is a serverless database platform that provides a scalable SQL database service. The speaker uses PlanetScale as their database provider of choice, mentioning its previous generous free tier and its role in their serverless architecture, despite the recent removal of the free tier.

💡Serverless Architecture

A serverless architecture is a model where the cloud provider manages the server infrastructure, allowing developers to focus on code rather than server maintenance. The speaker appreciates the serverless architecture for its simplicity and cost-effectiveness, especially when using platforms like Vercel and PlanetScale.

💡Clerk

Clerk is an authentication platform that offers user interface components and services to simplify the authentication process in applications. The speaker highly recommends Clerk for its ease of use and out-of-the-box functionality, which streamlines user authentication in their apps.

💡Superbase

Superbase is an open-source alternative to Firebase that provides a suite of backend services including a database, authentication, and serverless functions. The speaker suggests Superbase as a recommendation for new developers due to its generous free tier and comprehensive feature set.

💡PostHog

PostHog is an open-source product analytics tool that helps track user behavior within applications. The speaker uses PostHog for analytics, emphasizing its versatility in providing insights into user interactions, which is crucial for improving the user experience.

💡React Native

React Native is a framework for building native mobile applications using React. The speaker contemplates using React Native for future mobile app development, preferring it over other frameworks due to their familiarity with React and the need for cross-platform compatibility.

💡Expo

Expo is a set of tools and services built around React Native, designed to accelerate the development of mobile apps. Although not explicitly mentioned in the script, the speaker's consideration of React Native implies an interest in Expo as a tool for building mobile apps with a React-based approach.

Highlights

The app developer has been building apps for 2.5 years and will discuss the tech stack used.

Primarily builds web applications, occasionally mobile apps, focusing on web development stack.

Uses React for front-end development, with a background in React making Next.js an easy choice.

Utilizes Next.js as the go-to frontend framework, starting with version 12 and moving to app router in 13 and 14.

Recommends not jumping straight into Next.js unless deeply invested, suggesting trying other frameworks first.

Hosts applications on Vercel, appreciating its seamless hosting and deployment process.

Vercel can be expensive beyond the free tier due to high bandwidth charges.

Uses PlanetScale as the SQL database provider, favoring its serverless architecture.

Mentions Render as an alternative for non-serverless needs, with positive feedback from peers.

Avoids AWS and GCP due to complexity, preferring services that abstract infrastructure management.

Uses Clerk for authentication, praising its out-of-the-box functionality and UI components.

PlanetScale's free tier is being removed, making it less recommendable for new developers.

Recommends Superbase for new developers due to its generous free tier and comprehensive features.

Superbase is an open-source alternative to Firebase, offering database, authentication, and serverless functions.

Uses PostHog for analytics, appreciating its open-source nature and comprehensive feature set.

PostHog offers surveys, analytics tracking, funnel analysis, event tracking, and A/B testing.

Recommends PostHog for early-stage products or solo developers needing a multifunctional tool.

Considers React Native and Expo for mobile app development, valuing cross-platform distribution.

Prefers React Native over Flutter due to familiarity with React, but acknowledges limited mobile app development experience.

Transcripts

play00:00

as an app developer that's been building

play00:01

his own apps for the past two and a half

play00:03

years one of the most commonly asked

play00:05

questions I get asked is what textt do

play00:07

you use to build your apps and I've been

play00:08

telling people in my comments don't

play00:09

worry I'll make a video about it and

play00:11

I've been putting it off for so long but

play00:12

I'm finally making the video today so

play00:13

without further Ado let me go into

play00:15

talking about the exact text that I use

play00:16

to build my own apps and I will also

play00:18

talk about some Alternatives that you

play00:20

can use as well so I've been building my

play00:21

own apps for probably the past 2 and a

play00:23

half almost 3 years at this point and

play00:25

I've gone through a lot of variation as

play00:27

of right now probably for the past year

play00:29

or so nothing has changed and everything

play00:31

is staying completely the same so let's

play00:32

start off with the front end side of

play00:33

things so for the front end I build all

play00:35

of my apps in react so before getting

play00:38

into this video I just want to say that

play00:39

I primarily build web applications every

play00:42

now and then in the past I've done some

play00:44

mobile development but I'm much more

play00:45

comfortable much more proficient with

play00:47

the web development side of things so

play00:49

I'm going to be talking about my web

play00:51

development stack to build out my apps

play00:53

but I'll also give out some

play00:54

recommendations on what I would do if I

play00:55

were to build out my own mobile apps in

play00:57

the future again which I kind of want to

play00:58

do because I have a couple in the back

play01:00

of my mind of things that I want to

play01:01

build so in terms of the frontend code

play01:04

that I write everything in I use nextjs

play01:06

as my go-to frontend framework I've been

play01:08

using it since nextjs 12 with the pages

play01:11

router and then since nextjs 13 and 14

play01:13

onwards I've been doing everything with

play01:15

the app router and overall it's pretty

play01:17

good I originally had a background as a

play01:19

react developer so picking up nextjs was

play01:21

honestly pretty straightforward there's

play01:23

since it's still very very largely react

play01:26

Bas besides a couple of other

play01:27

improvements very specific to nextjs

play01:29

like service side rendering as well as

play01:31

app routers server actions all that I'm

play01:33

sure that I would like those Frameworks

play01:34

as well really I'm just settling on

play01:36

nextjs because it gained enough

play01:37

knowledge about it that like the

play01:39

opportunity cost to learn a completely

play01:41

brand new framework is pretty high I

play01:43

have a lot of template code that I have

play01:44

for myself that I can just reuse across

play01:47

every single app that I built so if you

play01:48

don't really have a front end framework

play01:49

of choice that you are already like very

play01:51

deeply invested in don't jump straight

play01:53

into nextjs just try out anything else

play01:54

that you want I'm really only sticking

play01:56

with nextjs because it's good enough for

play01:57

me to just keep building apps with it

play01:59

and and I'm also deeply invested enough

play02:01

all right the cost to get out is pretty

play02:03

high so I like nextjs but I'm not one of

play02:05

those people that are like nextjs is the

play02:07

greatest framework in the world nothing

play02:08

can beat it no I'm sure there are pros

play02:11

and cons to every single framework so

play02:12

just up to you to pick one dive deep

play02:14

into it and really commit to it and then

play02:16

I host all of my applications on versel

play02:18

which is a hosting platform created by

play02:20

the creators of nextjs I really love

play02:22

working on versell it is just so

play02:24

seamless in terms of Hosting my

play02:25

applications the building and deployment

play02:27

process is super seamless as well and I

play02:29

really love that it lets me not think at

play02:31

all about the infrastructure of my

play02:33

deployments of my code of my app it lets

play02:35

me focus on building the product and it

play02:37

handles all the heavy lifting infra

play02:39

deployment stuff on its own now I will

play02:41

say it can get pretty expensive once you

play02:43

start breaking out of the free tier

play02:45

because they charge a crazy amount for

play02:47

the bandwidth but For Better or For

play02:48

Worse I haven't really built an app big

play02:50

enough to cross that bandwidth yet and

play02:52

now moving on to the back inside of

play02:53

things I use Planet scale as my SQL

play02:56

database provider of choice and I run

play02:58

everything on a serverless architecture

play03:00

which makes versel really great once

play03:02

again I don't have to worry about

play03:03

spinning my own servers as of right now

play03:04

I haven't built anything out really

play03:07

doing enough heavy lifting to justify

play03:09

renting out some servers but if I were

play03:10

to I would probably choose something

play03:12

like render there's been a lot of great

play03:13

things about it some of my other

play03:14

developer friends and colleagues have

play03:16

used it as well and have great things to

play03:17

say about it so if I ever had to do

play03:19

something that isn't supported on server

play03:21

list I will probably end up

play03:22

transitioning to hosting it on render

play03:24

instead I know some of you are going to

play03:26

be like bro you don't use AWS bro you

play03:28

don't use gcp uh yeah no I don't I hate

play03:31

dealing with AWS I hate dealing with gcp

play03:33

if there is any type of software that I

play03:35

can use that that lets me avoid using

play03:37

AWS or gcp I'm probably going to use it

play03:39

I don't have much of an interest in

play03:40

learning it and I'd much rather just

play03:42

focus on building the product letting

play03:43

the infra and the deployments being

play03:45

handled by some other service that I'll

play03:46

just happily pay for instead so now

play03:48

taking a step back in terms of all of my

play03:50

authentication I use clerk as my

play03:52

authentication provider of choice I love

play03:54

using clerk it just works so nicely out

play03:56

of the box and they provide really

play03:58

helpful UI components that help users go

play04:00

through the authentication flow

play04:02

themselves highly recommend using clerk

play04:03

you've been using them for probably the

play04:04

past year year and a half or so I've

play04:06

used it across various applications no

play04:08

regrets no desires to change to anything

play04:10

else so taking one step back now let's

play04:12

transition to talking about the database

play04:14

provider that I use and this is the

play04:15

platform that I use but I don't know if

play04:16

it's the best platform that you should

play04:18

use so for myself personally I use

play04:20

Planet scale as my SQL database provider

play04:23

of choice I've been using them for a

play04:24

long time and I love them originally the

play04:26

reason why I chose Planet scale over

play04:28

other database provided is the fact that

play04:30

they used to have an incredibly generous

play04:32

free tier that had like a billion row

play04:35

reads for free every single month which

play04:37

is so crazy I never even got close to

play04:39

hitting the free limits at all but just

play04:41

recently in the past couple of weeks

play04:43

Planet scale announced that they are

play04:45

getting rid of their free hobby plan and

play04:47

now the cheapest option that planet

play04:48

scale provides is a $140 a month option

play04:51

which is honestly really really

play04:53

expensive now for the apps that I'm

play04:54

currently building right now they make

play04:56

enough money where I can cover this $40

play04:58

a month cost and I've already built too

play04:59

much of the app around Planet scale

play05:01

where the migration cost is a little bit

play05:03

too high for me to migrate but because

play05:05

there's no free tier anymore it's hard

play05:07

for me to recommend this to any new

play05:08

developer out there that wants to go out

play05:10

and build their own apps and honestly if

play05:12

I were to build an app completely from

play05:13

scratch right now and I wanted to keep

play05:15

cost as low as possible I would end up

play05:18

using super base instead and I actually

play05:20

used super base in the past and I really

play05:22

enjoyed it and honestly I don't have a

play05:23

good reason as to why I ended up

play05:25

switching away from it but super base if

play05:27

you haven't heard of it is an open

play05:28

source fire BAS alternative it's like a

play05:30

One-Stop shop for everything you need

play05:32

database authentication serverless

play05:35

functions everything you need they will

play05:37

host all of that and what's even better

play05:38

is the fact that they still have a very

play05:40

very generous free tier so if I were to

play05:42

do this completely from scratch where I

play05:44

had to build an app with no users no

play05:45

Revenue I probably at this point would

play05:47

go back to using stupid base just

play05:49

because so much for you completely for

play05:51

free and they're super generous about it

play05:53

so that is my recommendation now you may

play05:55

think that that is all the technology

play05:56

required to build an app but wait

play05:58

there's more hold up one important part

play06:00

of building out an app is the analytics

play06:02

that you track on your users how exactly

play06:04

are your users using your application

play06:06

where are they dropping up in your

play06:08

application analytics are so important

play06:10

for any type of product that you're

play06:11

building and for me the analytics

play06:13

provider that I use is post hog I've

play06:15

talked about post hog in the past I'm a

play06:17

huge fan of them and I cannot recommend

play06:18

them enough they are an open-source

play06:20

product analytics provider and they do

play06:23

so much for you they have surveys they

play06:25

have analytics tracking they have like

play06:26

funnel step throughs they have event

play06:28

tracking they have AB testing feature

play06:30

plag they truly do so many things

play06:32

because they do so many things at once

play06:34

it often times makes them like a jack of

play06:36

all trades master of none but let's be

play06:38

honest if you're watching this video

play06:40

your product is probably so early or you

play06:42

haven't even started building your

play06:43

product yet where you really need the

play06:44

best-in-class experimentation platform

play06:46

or best in flat you probably just need

play06:49

something that's cheap does a job really

play06:50

well and does a lot of things for you at

play06:52

once and I think post hog is a great

play06:54

choice for that I use post hog and all

play06:56

my applications I use them to see how

play06:58

many users are visiting my website every

play07:00

single day how are the users of my

play07:02

websites interacting with my

play07:03

applications what buttons are they

play07:05

pressing what screens are they going to

play07:06

what screens are they not going to how

play07:08

can I improve that user experience for

play07:10

them host hog handles all that for me

play07:12

and because they're open source you can

play07:13

self-host it if you want but they also

play07:15

have an incredibly generous free tier

play07:17

that you probably will not cross into

play07:19

their premium tier offering once again

play07:21

it's a great product for anybody that's

play07:22

just getting started building out their

play07:23

own products or for any solo developer

play07:25

that just needs one tool that will do

play07:27

everything for you highly highly recm

play07:29

recommend it honestly if you were to ask

play07:30

me right now which framework I would

play07:32

probably use I would probably go through

play07:34

and just absorb the high learning curve

play07:37

of learning react native and building

play07:38

apps with Expo because I've actually

play07:40

never used that framework before I've

play07:41

tried it like once or twice but it

play07:42

wasn't too successful with it but in the

play07:44

past I have built apps with flutter I

play07:46

have built apps with swift to build

play07:48

native iOS applications using Swift and

play07:50

xcode but right now if I were to build

play07:52

out an application I think the most

play07:54

important part for me would just be

play07:55

distribution across both Android and iOS

play07:57

and with that in mind I personally

play07:59

prefer using react native over flutter

play08:02

just because I'm much more comfortable

play08:03

with writing react code compared to

play08:04

flutter code but once again I'm not a

play08:06

mobile app expert I'm just somebody

play08:07

that's built like two or three mobile

play08:09

apps in his lifetime but right now if I

play08:10

were to choose I would probably choose

play08:12

react native and the biggest reason for

play08:13

that is because a lot of sdks and apis

play08:15

they have they often times have native

play08:17

support for like native cotlin code to

play08:19

write Android applications native Swift

play08:21

code to write iOS applications or react

play08:24

native support but take my mobile app

play08:26

recommendations with a grain of salt all

play08:27

right so that is my tech stack of what I

play08:29

used currently to build out my

play08:30

application hope you enjoyed it let me

play08:32

know if you have any questions in the

play08:33

comments down below

Rate This

5.0 / 5 (0 votes)

Ähnliche Tags
Web DevelopmentReactNext.jsServerlessApp HostingDatabaseAuthenticationAnalyticsTech StackDeveloper Tools
Benötigen Sie eine Zusammenfassung auf Englisch?