At emBold, we're constantly working on exciting challenges for businesses ranging in size from startups to multinational firms. But when a Brooklyn-based startup with a tight budget approaches you with the challenge of helping them to establish their brand and build the technology that will drive their business while also managing all e-commerce transactions and controlling physical access to their building located in one of the greatest cities on Earth, well, you jump at that opportunity.
We were required to build an application that could quickly segment different rooms as products on an e-commerce platform for this project while simultaneously pulling together a custom checkout process that incorporated high-tech identity verification utilizing ID checking and facial recognition technology. Then, incorporate a remotely enabled door locking system that could remotely control access to the spaces via the application or an administrator.
Nuance can destroy the ubiquity of any opinion, so avoiding that, I venture that it's safe to maintain that when you get to the base level of what constitutes a good user experience, it's when something "just works." So, when approaching this project, we understood that not only for the business to be successful but for the platform itself to be successful, it'd have to meet five precise criteria:
There's an adage in project management: You can only have two between time, quality, and cost. So, what do you do when your project requires all three?
The answer — you innovate.
We pride ourselves on our innovation in building content-managed e-commerce websites and progressive web applications (PWAs), especially on projects with tight budgets or multiple integration points. It's fun to think about what you'd build if you had an unlimited budget, but when does that happen? For startup projects specifically, and even for projects in the realm of advanced manufacturing and process automation/digitization, our primary concern tends to be getting to a minimum viable product (MVP). This project was no different.
Traditionally with a project like this one, we'd build it from the ground up on a web application framework like Laravel, where we'd have complete control over the models and structure of how we create application data. But, of course, that takes time and resources/budget to plan and develop — which, as mentioned before, were two resources we didn't have in abundance.
Our best option at this venture would be to turn to a prebuilt platform; however, that too has its drawbacks:
1. Locks you into a particular data model.
Open source platforms like WordPress and Drupal have their own particular way of organizing things in terms of data, file structure, and not to mention their own proprietary codexes of helper functions. As a result, working with these platforms can sometimes produce more limitations than advantages.
2. Generally speaking, the odds are slim that there's a plugin that will do exactly what you want it to do.
With most open-source platforms, there are many plugins out there to solve a myriad of problems. But truthfully, many of them have limited functionality or aren't built to work with other facets of the application you're trying to develop.
3. You End Up Working Against the Framework
In the end, trying to build a custom application by patching together a bunch of plugins, you'll inevitably run into limitations that need to be worked around. Often, it's debatable if employing this method is even more efficient due to the hours you burn trying to make things play nice together or trying out different plugins, hoping one is better than another.
At emBold, we don't believe in cobbling together projects. It doesn't make for a great user experience and is functionally a Rube Goldberg machine waiting for one piece to malfunction, taking down the entire device.
Tom Collins wrote about the "Genius of the And and the Tyranny of the Or." We employed a version of that methodology to bring this application to life for this project.
Combining the power of Laravel with the flexibility of WordPress
As mentioned above, cobbling together a project with WordPress plugins can expedite a project while also introducing a lot of incompatibilities and complexities. So, why not let WordPress do what it's good at while we do what we're good at by using WordPress to set up a basic framework while layering custom code on top of it?
We consulted with Brooklyn Photo Studio on the overall design aesthetic and found a WordPress theme that would allow us to quickly spin up the front end of the website while also incorporating WooCommerce to provide a workable eCommerce framework that could get us heading in the right direction. Then, we layered in Laravel's powerful MVC architectural pattern to provide a platform for developing the custom integrations we needed to develop.
As with any eCommerce application, you need someone to handle the payment processing. We're huge fans of Stripe here, not just for their compatibility with major platforms but also because of their user experience provided across all of their applications. Additionally, for this project, they had just rolled out Stripe Identity, a platform for verifying identities internationally that would work exceptionally well for our application. In the melting pot of New York City, we wanted to be sure that we integrated a platform that could validate a variety of documents and identities that would make the verification process seamless for all future customers of Brooklyn Photo Studio.
Locking / Unlocking / and Cleaning
Additionally, there had to be a post-verification method to allow access to the building and manage access before, during, and after a user's session. Plus, the application had to automatically account, especially during a global pandemic, for the time between bookings for cleaning while allowing access for cleaning staff and ensuring that rooms weren't booked during those mandatory gaps.
We ended up building a system to automate this process. Post-verification, after the transaction completes, a user is emailed and texted a code on their phone, which will unlock the door at a specific time. The system, in the meantime, logs that code and stores it until the room is ready to be unlocked. The application then reprograms the door lock at the beginning of the session, then resets the code at the end – allowing the cleaning staff to come in, then prepares for the next session – all without management having to touch a button.
In its entirety, this project exhibited our ability to think on our feet and allowed us to develop a creative solution to a big problem that helped a small startup business get off the ground. We seamlessly integrated an open-source platform with systems for eCommerce, identity verification, and remote door locking and security inside of a beautiful user experience and identity, all while staying on budget and on a tight timeline.
Complicated projects like this one are right in our wheelhouse. Be sure to contact emBold to learn more about how we can help you build your custom web application!
From our Blog
ing them to establish their brand and build the technology that will drive their business while also managing all e-commerce transactions and controlling physical access to their building located in one of the greatest cities on Earth, well, you jump at that opportunity.
A deep dive on bootstrapping WordPress with custom API integrations to operate a startup's online commerce and physical facility.
Small businesses often feel like they don't have the money to improve their websites. But it doesn't take much investment for a website to provide significant benefits to the profitability and accessibility of a small business. As long as you understand the basics of what makes a good website, you can tailor your site to […]
For many clients, developing a blog may seem like an infinite amount of effort without any reward. We get it. With your limited amount of resources already dedicated to business-critical tasks, freeing up those resources for non-critical pipe dreams seems like a fool’s errand, right? That notwithstanding – say we did have that coveted extra hour in the day: What to write about? How often? Is anyone even going to read this thing?! Why not dedicate that extra hour to something tried and true — like cold calling. I’m kidding.