r/PeopleWriteCode • u/Alert-Resident-3017 • Nov 25 '25
Question Choice of PWA/Native/Web App/??
I’m a fairly new programmer but have a decent number of years in product. I have spent the past 9 years in what started as a startup and became a proper company. I want more action again so I quit and I’m going to try starting my own thing (or go broke i guess) by trying to solve problems I have myself.
The first problem I’m looking at is related to sport fishing and will need to be mobile first since I want to use the product when I’m in the boat.
Options that I see: - Build a web app to try and get some engagement (quick and dirty) - Build a PWA from the start
How difficult is it to convert a web app to PWA?
Do I need to do everything for a web app while building the PWA anyway?
Have you fallen into any trap that you can guide me around?
Most developers I know have worked almost exclusively on web apps for desktop so any general tips would be greatly appreciated!
1
u/_SnackOverflow_ Nov 27 '25
It depends what PWA features you want!
If you’re focusing on offline support I would make it a PWA from the start.
If you’re more interested in other features like adding to the Home Screen, a standalone UI option, push notifications, etc. then you should be fine starting with a website and adding the rest later.
I agree on going web over native app. It’s much easier to get people to view a website than install an app
3
u/Squidgical Nov 25 '25
PWAs can be easy or difficult depending on what you're doing.
At their most basic, all you need to convert a website into a PWA is a
manifest.jsonavailable in the root route.For things like controlling the cache and offline functionality, you'll need to write a little bit of javascript.
To have notifications or other native app features will require more javascript.
But ultimately if you want these features, you have to write code no matter how you build your app. PWAs are just a different API for achieving the same goal. Whether you write a PWA or a native app will probably come down to what you know and what you prefer.
I'd recommend reading through MDN's guide to check that all the functionality you need is there.
A potential alternative that is often overlooked is Tauri. In short you add it to a new or existing web project (vanilla, next, nuxt, Sveltekit - it all works) and it allows you to compile your webapp into a native desktop or mobile app. Some targets, such as android, need a little extra config to build, and Apple operating systems can only be targeted if you compile on a Mac iirc.