Recap
The first month of my indie hacking journey has come to an end. I am happy to announce that I’ve launched Roadsio on ProductHunt yesterday.
The problem
I started this product from a problem I personally experience. As a motorcyclist, I like to go on long trips across Europe. Planning a road trip is pretty hard since you have to take care of multiple tasks: finding accommodation, points of interest for visitation, refueling stops, etc.
In the US people can use Roadtrippers for trip planning, but unfortunately, it’s not available in Europe. So, I have decided to choose this as my first project, building a simple but intuitive road trip planner and making it available for European trips.
Product
The first version of the product can be used to plan simple trips. These include:
- drag&drop itinerary builder
- trip summary
- location search
- on-map route builder
- 10 types of POIs
- unlimited trip waypoints
- route export as GPX or KML
More advanced features might follow soon, depending on user interest in this product.
Technology
I started with a simple front-end application, building it with SvelteKit. It was my first time working with Svelte and I chose to learn it after seeing a video from Fireship building a simple chat app. Some advantages of building with Svelte over React or Vue:
- Smaller Bundle Size: Svelte’s build-time compilation leads to smaller bundle sizes, resulting in faster loading times and improved application performance.
- Faster Performance: The absence of a virtual DOM and direct DOM manipulation in Svelte allow for faster updates and rendering, contributing to better overall performance.
- No Runtime Overhead: Unlike Vue and React, Svelte does not require a runtime library, reducing the size of the final application bundle and eliminating the associated runtime overhead.
I am coming from a VueJS background and I found Svelte’s reactive assignments very intuitive and helped simplify state management. For future projects, I will only use Svelte 🥳
For the map manipulation functionalities, I used vector maps from Jawg. Used maplibregl JS open-source library for integrations and I have to say that the process wasn’t straightforward. Some map markers and popups had to be developed in plain JS which slowed my development.
Revenue Model
For this first project, I am considering adding a one-time-payment for a premium version which would include a GPT integration, cloud storage for trips, trip collaboration, more route export formats, and others.
Feedback
Any feedback or suggestions are much appreciated, feel free to contact me on Twitter.