Full-side Project Provisioning for a Smart Curtain System

Our client launched a crowdfunding campaign across the Web for their breakthrough innovation – a smart control kit called Slide which can be installed on any existing horizontal curtain to motorize it and make it smart. They selected R-Style Lab for our proven software engineering background and a reputation for selecting the best technology stack to get the maximum outcome.

Our client launched a crowdfunding campaign across the Web for their breakthrough innovation – a smart control kit called Slide which can be installed on any existing horizontal curtain to motorize it and make it smart. They selected R-Style Lab for our proven software engineering background and a reputation for selecting the best technology stack to get the maximum outcome.
Technologies & tools
C, Golang, Python, Laravel, Vue.js
Project team
3 PHP developers, 1 Team lead, 1 Front-end developer, 1 QA engineer, 1 Architecturer, 1 Embedded developer, 1 BA, 1 PM

Solution

To make the Slide project go live and get pre-ordered systems delivered to their first customers, R-Style Lab’s mission was to build the back-end server part of the solution. It would empower the following business logic: a user downloads the Slide app (iOS/Android), installs the purchased Slide systems and registers them via the app. From now on, the user can control their smart curtains with a smartphone and schedule curtains’ opening and closing.

Taken the scope of the project, the main requirements set for the back-end server part were its extreme scalability, fast performance, and stable functioning.

After doing thorough research, we decided to use:

  • Programming language: PHP as principal programming language, and Golang for those parts of the project which require higher performance (for example, back-end part connecting the server with an end-point device).
  • Cloud Infrastructure: Kubernetes as an advanced approach to managing the app workloads and services.

The chosen tech stack would guarantee zero downtime deployment and support the product’s future growth.

The final Laravel-based solution, delivered by R-Style Lab, tackles the following challenges:

  • Interaction with end-point devices via a custom built API. Once a customer uses the Slide mobile app to control their smart curtains, a request is sent to the server, which instantly triggers the motor to bring the curtains to the desired positions.
  • Firmware management & update. We implemented the Over the Air (OTA) functionality into the back-end solution, with which a user can remotely update the firmware.
  • Role-based access model. We started with the roles of Admin and Users, aiming at augmenting the number of roles in the future.

The same characteristics – extremely fast run-time performance and remarkable flexibility in use – predefined our selection of Vue.js for the front-end part.

The back-end server is hosted on AWS, with a number of Amazon services employed in the development process:

  • Relational Database Service (RDS), for setting up and operating a database in the AWS cloud.
  • Elastic Container Service (EKS), which is a certified service for the Kubernetes infrastructure orchestration and management.
  • CloudWatch, for monitoring key metrics and app visualization.
  • AWS IoT Core, making it easy to leverage a variety of services to access and act on the collected data in the cloud.

Impressed by the quality of our team’s work and responsiveness, the client expanded an initial scope of work for us. Besides software development, we were assigned to improve and refactor the firmware part of the solution, making it function smoothly despite a growing number of users.

Our customer has ambitious ongoing plans for the project, including further integration with voice assistant systems. For this, they are planning to engage the R-Style Lab team into its further development and maintenance.

Do You Have Your Own Project to Discuss?
We are Here to Help You!

Other Related Projects

Got a Project Idea? Let's Discuss!

We'll get back to you in 24 hours!




Name shouldn't be empty

Email shouldn't be empty

Field shouldn't be empty

By sending this message you agree to our Privacy Policy

Vlada Krivitskaya Business Development Manager
Nikita Dunets Director of Business Development
Igor Zhdanko Business Development Manager
Call us now +1 888 252 3073

Get 3 bonuses now!

Just Share Your Project Idea
(We'll Keep It Safe!)
& Get Your Bonuses for Free!

get for free now