SaaS / Cloud Storage · Cloud Storage SaaS Platform

From Laravel to React & Next.js: Re-Architecting a Cloud Storage App with a Decoupled API to Power iOS

Background

The client's cloud storage app was a tightly coupled monolith built in Laravel with Blade templates — frontend and backend fused together. The server-rendered UI worked, but it lacked a modern, app-like feel, and critically, its architecture couldn't support the native iOS app they wanted to add. Business logic was baked into the views, so nothing could be reused from another platform.

Challenge

The goal was to modernize the user experience while powering both the web app and a native iOS app from a single source of truth. Core logic — file uploads, sharing, permissions — had to be consumed securely by multiple clients without duplicating any of it. On top of that, the migration had to happen incrementally, without taking the live service offline.

Strategy

Results

Conclusion

The turning point of this project was the decision to decouple the backend into an API. Separating frontend from backend let us build a modern Next.js web app and a native iOS app on the same API — with no duplicated logic — something the tightly coupled Laravel monolith could never have supported. Making the backend an independent single source of truth is one of the highest-value investments any product planning a multi-platform future can make.


SaaS / クラウドストレージ · クラウドストレージSaaSプラットフォーム

LaravelからNext.jsへ:APIを分離してクラウドストレージアプリを再構築し、iOSアプリ開発を実現

背景

クライアントのクラウドストレージアプリは、フロントエンドとバックエンドが密結合したモノリシックなLaravel(Bladeテンプレート)で構築されていました。サーバーレンダリングのUIは動作はしていたものの、モダンでアプリのような操作感に欠け、何よりネイティブのiOSアプリを追加したいというニーズに応えられない構造になっていました。ビジネスロジックがビューに埋め込まれているため、別プラットフォームから再利用することができなかったのです。

課題

目標は、ユーザー体験を一新しつつ、Web版とネイティブiOSアプリの両方を単一の信頼できる情報源から動かすことでした。そのためには、ファイルのアップロード・共有・権限管理といった中核ロジックを一切複製せずに、複数のクライアントから安全に利用できる必要がありました。さらに、稼働中のサービスを止めずに段階的に移行することが求められました。

戦略

結果

結論

このプロジェクトの転換点は、バックエンドをAPIとして分離した決断でした。フロントエンドとバックエンドを切り離したことで、モダンなNext.js Webアプリと、同じAPIを利用するネイティブiOSアプリを、ロジックを二重化することなく構築できました。密結合したLaravelモノリスでは不可能だったことです。バックエンドをひとつの信頼できる情報源として独立させることは、マルチプラットフォーム展開を見据えるあらゆるプロダクトにとって、最も価値ある投資のひとつだと私たちは考えています。