When developing solutions, we try to strike a balance between client preferences and our expert recommendations. In this case, our client was looking for an open-source and cost-effective solution for backend development. We selected .NET Core Framework as a powerful, open-source, and cross-platform framework for building modern, cloud-based web apps on Windows, macOS, or Linux.
The choice of frontend technologies was dictated by the project’s scope and future needs. We agreed on Vue.js because it is flexible, lightweight, and multi-functional. More so, it makes developing a website an easy and swift process with the ability to integrate additional modules when such a need arises.
As for mobile apps, we advocate for native development as it allows us to guarantee great speed, performance, and UX. Native mobile development is also the right fit for apps with broad functionality, and our goal was to deliver an app with upcoming features in mind.
So here are the essentials we implemented in iOS and Android MVPs:
- Registration and Sign-In. At the registration step, the user is asked to fill out several mandatory fields, such as language, username, password, pin, first name, last name, email, phone number, and preferred communication. It is followed by quick verification to ensure the user provides correct details and can be contacted.
- User Profile. The app covers the basics like resetting a password, editing account details, and closing the account.
- Bike Management. Multiple bikes can be added. Each bike contains a brief description of its type (regular or e-bike), color, height, lengths, handlebar height and width. The My Bikes screen provides at-a-glance information on which bike has been parked and what tower it is parked in.
- Bike Parkers Search. Bike Parkers screen displays available bicycle towers with the closest on top. The user can see the exact address of each parker and how far they are from the user’s current location. Bike parkers can also be viewed on a map, and there’s a filter to sort them by type (woodstock, gated, solitary), remoteness, and choose a familiar distance metric – kilometers or miles.
- Park Bicycle. Once the user arrives at the chosen bike tower, they open a mobile app, select a respective bike from the list, press Request to Park, and choose the bike tower they are at. This triggers the cloud app to communicate with the tower’s controller to verify the user and unlock the gate upon entering a correct pin.
- Get Bicycle. The process to retrieve a bike is identical to the step above, with the only difference in that the user presses the Request to Get button. If the balance is insufficient, the user will be reminded to transfer funds to their account.
- Payment. The user can check their balance, add a credit or debit card to update their balance on the go, and turn on or off the auto-charge option.
Our UI/UX designers prepared mockups for the landing page, and the designs were almost immediately approved, with minor tweaks, which speeded up the development of a landing page. The latter includes basic login functionality, profile view, contact form, Google Map for viewing already installed parking systems, and storage for static data, such as videos, partners, news.