Client background
Crown Digital is a Singapore-based technology company known in the market for its robotic barista product — an automated coffee-making system that has been deployed in corporate offices, airports, and retail locations across Singapore and the wider Asia-Pacific region. With around 20 employees, Crown Digital operates at the intersection of robotics, AI, and customer experience technology.
The company's existing digital presence was limited to a static website that served a corporate brochure function: describing the product and the company without giving users any dynamic or interactive capability. The technical team — led by the development team lead who managed the Squash Apps engagement — recognised that as Crown Digital's footprint grew, they needed a mobile presence that could serve multiple functions: showcasing the robotic barista product in an interactive format, providing dynamic content about locations and deployments, and giving users a channel to engage with the Crown Digital brand.
The specific requirements were for a mobile application available on both iOS and Android, with dynamic content controlled through an admin panel — allowing Crown Digital's non-technical team to update the content displayed in the app without requiring developer involvement. The app needed to reflect Crown Digital's positioning as an AI and robotics innovator: technically impressive, visually polished, and genuinely useful to users rather than a digital brochure that nobody opened twice.
The challenge
The development challenge was creating an application that was simultaneously dynamic (content controllable without developer involvement), high-quality in UX terms, and deployable on both iOS and Android without the maintenance overhead of two entirely separate codebases. For a company with a small technical team, maintainability was not a secondary consideration — a mobile app that required significant ongoing developer attention for routine content updates would quickly become a burden rather than an asset.
The admin panel requirement was more demanding than it might initially appear. A truly useful admin panel for a dynamic mobile app needs to give content editors the ability to structure and schedule content updates, preview how changes will appear in the app before publishing, and manage assets (images, videos) without requiring specific technical knowledge. Building this capability at a startup budget meant making deliberate trade-off decisions about which admin features to invest in for maximum content team productivity.
The technical complexity was compounded by the fact that Crown Digital's existing team had limited mobile development expertise. The Squash Apps team needed to deliver not just a working product but a product with a codebase and deployment setup that Crown Digital's team could understand and maintain — which meant code quality, documentation, and clear architectural patterns were as important as feature delivery.
From a product design perspective, the app needed to communicate Crown Digital's brand identity effectively. A robotics company's app needs to feel modern, technologically confident, and visually distinctive — generic template-style design would undermine the brand position that the robotic barista product was building.
How we engaged
The engagement began in early 2019 and developed into an ongoing collaboration. The initial build was managed as a direct technical-to-technical relationship: Crown Digital's development team lead worked directly with the Squash Apps technical manager, who coordinated with the development team. This lean communication structure — noted specifically in the review as a positive aspect of the workflow — minimised the overhead of a larger project management layer and kept the team focused on execution.
The process used Slack for day-to-day communication and virtual meetings for design reviews and sprint demos. This communication setup suited a Singaporean client working with a team in India: the time zone overlap (Singapore is IST+2.5) allowed for substantial working hour overlap, and the asynchronous Slack channel ensured that questions and updates were never blocked on a scheduled meeting.
The approach to UX design was collaborative: the Squash Apps UI/UX team developed clickable prototypes that were reviewed by Crown Digital's leadership before any development work began. This front-loaded design investment meant that the engineering work was executed against a validated design rather than a speculative brief, reducing the design rework that commonly consumes budget on mobile projects.
What we built
The mobile application was delivered for both iOS and Android using a shared React Native codebase, then published to the Apple App Store and Google Play Store. The app comprised several content sections driven by the admin panel: a product showcase section featuring the robotic barista with interactive content about the technology and its deployments; a locations section displaying active Crown Digital installations on an interactive map with location-specific information; an events and news section for updates and announcements; and a contact and inquiry flow for users interested in Crown Digital's products or services.
All content sections were fully dynamic: text, images, videos, and location data were stored in the backend CMS and served to the app via API. Content updates made through the admin panel were reflected in the app immediately — no App Store update required for content changes.
The admin panel was built as a web application with a clean interface accessible to Crown Digital's marketing and operations team without technical knowledge. Content editors could create and schedule content updates, upload media assets with automatic image optimisation, manage location entries including map pin placement and associated information, and preview content changes in a simulated app view before publishing.
The UX design work — which the development team lead specifically highlighted as a standout contribution — produced a visual identity for the app that was distinctive and consistent with Crown Digital's robotic technology brand positioning. The use of clean geometric layouts, consistent typographic hierarchy, and purposeful motion design gave the app a premium feel that matched the quality of the physical robotic barista product it was representing.
Technical approach
React Native was selected for the cross-platform capability: a single codebase deploying to both iOS and Android significantly reduced the ongoing maintenance overhead for Crown Digital's small technical team. The shared codebase was structured to allow platform-specific customisation where needed (primarily around navigation patterns and platform-specific UI conventions) while keeping the business logic and data layer fully shared.
The backend was a Node.js/Express API backed by a PostgreSQL database, hosted on AWS. The API served both the mobile app and the admin panel from a single unified endpoint, with role-based access controls distinguishing public API access (mobile app) from authenticated admin access (content management).
Image optimisation was implemented in the asset upload pipeline: images uploaded by content editors were automatically processed to generate multiple resolution variants (for different device screen densities) and converted to WebP format for improved compression on Android. This reduced the data usage of the app significantly compared to serving original upload files, improving the experience for users on mobile data connections.
Offline capability was implemented for core content sections: the app cached the most recent successful content fetch locally, allowing users to browse previously loaded content when connectivity was unavailable. Content that required real-time data (locations with live status) was clearly indicated as requiring connectivity, while evergreen content (product information, company history) was served from cache.
Results
The Crown Digital mobile app launched on both the Apple App Store and Google Play Store on schedule. The launch was well-received internally: the development team lead noted "we see great results as outcome" in the Clutch review, reflecting satisfaction with both the technical execution and the operational value the app delivered.
The UX quality was specifically called out as a differentiator: "Squash Apps team did a great job especially UI/UX team make our job easy." For a product that represented Crown Digital's brand in a competitive and design-conscious technology market, this quality of execution was commercially important. A robotics company's mobile app is a brand statement as much as a functional tool — it needs to communicate technical innovation visually, and the design work delivered exactly this.
The dynamic CMS proved its value in the weeks after launch: the Crown Digital marketing team updated content multiple times without any developer involvement, demonstrating the independence the admin panel was designed to provide. For a small technical team, this content autonomy — the ability to push updates to thousands of users instantly via a web interface — was a meaningful operational improvement over the static digital presence that preceded it.
The lean communication process — working directly with the technical manager without excessive project management overhead — delivered a smooth collaboration that the Crown Digital team described positively: "We used Slack for communication and due to small team our end it is a lean process." For technology companies, AI startups, and robotics businesses looking to build a polished mobile presence with a dynamic CMS backend, the Crown Digital engagement illustrates what React Native mobile app development combined with a purpose-built content management system can deliver within a focused budget. The engagement continued beyond the initial build, reflecting the team's confidence in Squash Apps for ongoing development and maintenance.
