No code experience? No problem. Expo + Cursor is all you need
This is a guest post from Glodin Mulali who DM'd us about his experience building his first ever app with Expo and Cursor. It was such an inspiring story so we asked him to turn it into a blog post and here it is!
...
What happens when you have a big idea but no coding experience?
As someone who played sports in college, I wanted an app that could adjust workouts and meal plans based on real-time progress—something that felt personal, not just a one-size-fits-all solution. After searching for the perfect app, I realized it didn’t exist... yet. So, I decided to make it myself.
The problem? I had absolutely no idea how to code.
Today my app (TrainAi) is live on the App Store and Google Play Store, and people are using it!
How did I go from no-coding-experience to a cross-platform production application? Expo and Cursor.
Discovering Expo and Cursor
Expo: With no app development experience, I had to learn and gather as much information as I could. I started googling, watching YouTube videos, and learning as much as I could about app development. Flutter and React Native kept coming up as options for cross-platform applications. The deciding factor for me was Expo Snack. The fact that I could build and test a prototype without having to struggle with setting up my development environment made it feel like I had stumbled upon the ultimate cheat code for mobile development. If you’re new to app development, Expo Snack is your best friend—it handles all the hard stuff so you can focus on bringing your ideas to life.
After weeks of playing around with Expo Snack, I started to see its limitations and the reality that I needed to set up a development environment if I wanted to deploy my app to the world.
Here’s why Expo was a game-changer for me:
Key Expo libraries I used:
Cursor: I started looking into setting up my development environment and kept seeing Xcode, Android Studio, and Visual Studio Code. I already had Visual Studio Code on my computer, so I was able to start with that but had no luck setting up my environment and running my app—not because it wasn't working, but because I had no clue what I was doing. This is when I found out about Cursor, an AI-driven code editor that became my secret weapon. Cursor wasn’t just a coding tool; it was like having a senior developer by my side, guiding me through every challenge. Whenever I hit a roadblock, Cursor would offer up code snippets and explain the logic behind them. For someone who had never coded before, this was HUGE. Cursor even helped me troubleshoot bugs and clean up my code when things got messy.
Cursor offers several features that can be extremely helpful for any developer:
Building TrainAi
With the help of Cursor, I created a flowchart to map out the application's architecture.
领英推荐
The development journey was full of small wins and (many) facepalm moments. Here's a breakdown of how it all came together:
1. Project Setup
Expo CLI made this easy. With just a single command, I had a working project up and running. I also used Expo Go to test the app on my device in real-time, which was incredibly helpful for immediate feedback.
2. UI/UX Design
I started with pen and paper, sketching out how I wanted the app to look. This initial step was crucial in organizing my thoughts and creating a clear vision. From there, I translated those sketches into digital wireframes using Figma. I spent time researching UI/UX best practices to ensure the app was user-friendly and intuitive. Expo’s pre-built components like React Native Paper and NativeBase saved me hours in design work, making my app look professional even with my lack of experience.
3. Backend Setup
For the backend, I chose Firebase for authentication and real-time database management. Setting this up was a massive learning curve, but Firebase’s integration with Expo made it manageable. I also integrated RapidAPI for accessing various APIs to enhance the app's functionality. RevenueCat was used to handle in-app subscriptions, simplifying the process of managing purchases across platforms. Additionally, I used Heroku for deploying some backend services.
4. Testing and Deployment
Testing was a critical part of the development process. I used Expo Go and the dev client for testing on physical devices. For iOS, I utilized TestFlight to distribute beta versions to testers. This allowed me to gather feedback and fix issues before the official launch. Managing dependencies and ensuring compatibility across platforms was challenging but essential for a smooth user experience.
5. Tackling Android Deployment
The most painful part? Deploying the Android version. I ran into so many build errors, it felt like I was stuck in a loop. Issues ranged from Gradle configurations to SDK mismatches. But after diving deep into Expo’s documentation, scouring community forums, and sometimes reaching out for help, I was able to fix the issues. Seeing the app finally launch on the Play Store was incredibly rewarding.
Overcoming Challenges
Building an app without coding experience is hard. Period. But the biggest lesson I learned? You don’t have to do it alone.
Launch and User Feedback
When TrainAi went live on the App Store and Google Play, it was a surreal moment. Seeing people download and use something I had built (without any prior coding experience) was beyond rewarding. Early feedback has been positive, with users enjoying the personalized workout plans and meal suggestions.
What’s Next?
I plan to keep improving TrainAi—adding new features, enhancing existing ones, and continuously refining the user experience based on feedback.
Advice for Aspiring Developers: You Can Do This!
If there’s one thing I’ve learned, it’s this: You don’t need to be a professional coder to build something amazing. Tools like Expo and Cursor make development accessible to everyone. So if you’ve got an idea, don’t let the fear of coding hold you back.
Here’s my advice:
Conclusion: From Idea to Reality
The journey from zero coding knowledge to developing and launching TrainAi has been nothing short of transformative. With the help of Expo and Cursor, I was able to turn a simple idea into a functional app that’s live and being used by real people.
To the teams at Expo and Cursor, thank you for creating such powerful, accessible tools. And to anyone reading this—if I could do it, you absolutely can too.