Sweetwo:
A dating web app

PWA SPA Web Application
YEAR
2021
DURATION
1 month
PLATFORM
Web Application
WEBSITE
Sweetwo

Introduction

Sweetwo is a dating web app where you can find people to hang out with for activities like café hopping, to a party, hiking or events such as festive programs. Currently it’s being operated in Singapore. Soon it will expand to other countries too.

Objectives

Client needed a dating application with following requirements.

  1. All devices compatibility
  2. Clean and minimal UI
  3. Full featured admin panel

Process

Users had to upload a minimum of 5 photos and 1 video for their application to open an account to be considered. File upload was an integral part of the application, so we built our own Vue.js plugin that allowed us to do this easily. With compression and multiple file support.

Instead of storing the images and videos on the same server. We decided to use Firebase Cloud Storage. We chose firebase cloud storage because it provides security, scalability and is very robust.

On the front end, because we had to load a lot of images and videos. It was definitely taking a toll on the performance of the website. We solved this with smart compression and lazy loading of the images.

Approach

We went with the incremental approach to complete this project.

A big non-repeating Requirements and Analysis phase before starting the project, where everything was cautiously understood and planned. We worked in increments on the Design and Development phase, consulting the client before and after each increment. Following with a Testing phase at the end.

Research

The overall app is separated into 3 parts: Frontend, Backend, Admin panel.

Backend has all the business logic exposed via API endpoints. Frontend & Admin panel render API responses in suitable way. 

Frontend is built as a single page application on VueJs. The design system was built using Tailwind css.

File upload was an integral part of this application. For this purpose a vuejs based file upload component library was made.

https://www.npmjs.com/package/vue-easy-multi-file-upload 

The admin panel to visualize data and stats is also built on VueJs. Customized Bootstrap is used for admin as it allows for faster development.

Backend is based on Nodejs, Express, Docker and Redis. Postgres is used as a database.

For OTP verification we used Vonage verification API. We also published a blog post on how to implement OTP in the most simplest way possible.

OTP Verification with Vonage

Testimonials

Excellent work, fast response, willingness to take in feedbacks and update quickly.

Sky Fam
Co-Founder at Snatchjobs Singapore

Conclusion

The project was successfully completed and is now in production. Operating in Singapore with further plans to expand. TVC is continuously providing support and adding features.