Angular, Ionic… oh my
Originally I tried to hack together a mobile app using cordova. It was a miserable failure. My thinking was it would be better to get an app out quickly to take advantage of push notifications, which will work way better than email for new game notifications, reminders, direct mentions, etc.
The problem was the approach was just too hacky. Working with a friend here in Portland, we basically tried to shoehorn the website into a cordova wrapper. This theoretically would save us a ton of time, since we wouldn’t have to write a full API for the site and design an entire mobile app. Instead, we could basically just “frame” the site into a native app. It would look the exact same as the current mobile version of the site, but then we’d have access to things like push notifications, alerts, badges etc.
We almost got there, but in the end it was just a little too sucky for me to feel good about releasing. Bugs like if you clicked any external link, it crashed the app. By the end, I was spending more time trying to put together hacky fixes for all the bugs than I would have if I just did it the right way from the start.
Which brings me to Ionic. Ionic still uses cordova underneath, but they’re basically like the bootstrap of the mobile world, with a bunch of other great tools to save time. I started by learning some angular from a few places, including codeschool and egghead.io
I’m still in the very early stages, but here’s a couple terrible screenshots of the first steps. Here’s the game lobby page:
And here’s the group home page:
Next step is finishing making very rough versions of all the main pages, connected to a hardcoded API endpoint on my local version of the site. Meanwhile, my partner David is planning to add user authentication and start integrating the chat. Then I’ll go through each page again and try to nail down the layout, UI, and styling more. Then I need to finish all the API endpoints once I know what I’ll need. Then we switch from using hardcoded data to logging in a test user locally and using their actual group, games, etc.
A lot more after that but that’s as far as I want to think about it right now.
Also since this is my first post, here’s a quick summary of the site I’m working on, www.The100.io:
The 100 concept is simple: select when you play, your timezone, your age, whether you’re serious or casual, and we’ll automatically group you with 100 other like minded players.