Reduce API Fragmentation Across Platforms with Unitools

May 6, 2024

Reduce API Fragmentation Across Platforms with Unitools

In this blog, we take a look at how Unitools offers a comprehensive solution to cross-platform development challenges.

Author

Tailor Ankitbhai Gopalbhai
Tailor Ankitbhai GopalbhaiSenior Software Engineer - I


Problem with Code Sharing

In the cross-platform development, sharing code for essential functionalities like navigation and image handling across frameworks such as Next.js, Expo, and React Native presents several challenges:

  1. Fragmentation of APIs:
    • Each framework offers its own set of APIs for components and hooks, leading to fragmentation in code sharing.
    • Developers often face the dilemma of choosing between platform-specific APIs, resulting in code that is tightly coupled to a particular framework.
  2. Limited Options:
    • While numerous libraries exist for universal components, options for core functionalities like navigation and image handling are relatively less.
    • This scarcity makes it challenging to find robust solutions that work seamlessly across platforms, forcing developers to either compromise on functionality or invest time in building custom solutions.


Finding the Solution to the Problem

To address these challenge, we had two key solutions:

  1. Platform-based Solution:
    • Leveraging platform-specific logic to handle navigation and image handling. For instance, returning Next links for web platforms and Expo/React Navigation links for mobile platforms.
    • This approach prioritizes compatibility with the native features and behaviors of each platform, ensuring a smooth user experience across devices.
  2. Framework-based Solution:
    • Developing a unified API within a base library that abstracts away platform-specific details.
    • Creating platform-specific libraries that unify props for each framework, allowing developers to seamlessly switch between Next.js, Expo, and React Native without sacrificing functionality.
    • Base library is aliased with framework-specific libraries in the user's project, ensuring ease of use and compatibility.


Introducing Unitools

Unitools is a suite of tools designed to simplify code sharing among Next.js, Expo, and React Native projects. It is an essential tool in today's cross-platform development landscape, especially with the increasing shift towards universal app development. Unitools offers a unified API for managing images, links, and route navigation hooks across all these platforms.


Our Approach

A framework-based solution

Our approach focuses on a framework-based solution, emphasizing the following principles:

  • Unified API: By centralizing functionality within a base library, Unitools abstracts away platform-specific details, making it easier for developers to write code that works across different frameworks.
  • Platform-specific Libraries: To ensure compatibility and optimize performance, Unitools offers platform-specific libraries that unify props for each framework. This approach allows developers to leverage the native features and behaviors of each platform while maintaining a consistent API.
  • Alias Integration: Unitools seamlessly integrates with developers' projects through aliasing, making it easy to incorporate the base library and platform-specific extensions without disrupting existing workflows.


Why Not the Platform-First Approach?

While a platform-first approach may seem intuitive, it often leads to fragmented code and limited flexibility. By prioritizing a framework-based solution, Unitools ensures compatibility with future framework-specific optimizations and features, safeguarding against the ever-changing landscape of cross-platform development.


Why Not Solito?

During our exploration of solutions, we identified a need for seamless integration with Expo Web. Solito, a platform-based solution, mainly returns NextLink on web platforms. This prompted us to create our own framework-based solution.


What’s Included?

Each package contains three libraries:

  1. Base package which exports the interface
  2. Expo package
  3. Next.js package

Below are the packages we have created so far:

  • Link - A unified API for expo and next link
  • Image -A unified API for expo and next image
  • Router - A unified API for expo and next router

Explore more about Unitools 🔗

Hire Us Form


Parting Thoughts

Unitools provides a comprehensive solution to cross-platform development challenges. It offers a unified toolkit for sharing code across Next.js, Expo, and React Native projects. With a framework-based approach that prioritizes compatibility and flexibility, Unitools enables seamless code sharing and boosts developer productivity in the ever-changing world of app development.

Subscribe to Our Newsletter

More from the engineering frontline.

Dive deep into our research and insights on design, development, and the impact of various trends to businesses.
Insight
Why Legacy Systems Make Business Growth More Expensive: Navigate A Smarter Path to Legacy Modernization
Sep 23, 2026

Why Legacy Systems Make Business Growth More Expensive: Navigate A Smarter Path to Legacy Modernization

Learn how legacy systems make business growth more expensive and how edge-first modernization can remove constraints without replacing the existing system.

Insight
SSO, Audit Logs and RBAC: The Enterprise Features AI Prototyping Tools Do Not Cover | Sarika Gautam
Sep 23, 2026

SSO, Audit Logs and RBAC: The Enterprise Features AI Prototyping Tools Do Not Cover | Sarika Gautam

Why AI-generated prototypes fail enterprise review: the context behind SSO, the cost of skipping audit logs, and how role explosion makes RBAC a product of its own.

Insight
Feature Flags as Technical Debt: The Cleanup Nobody Schedules
Sep 21, 2026

Feature Flags as Technical Debt: The Cleanup Nobody Schedules

This blog explains how unmanaged feature flags create technical debt and how teams can detect, manage, and remove them safely.

Insight
Building AI-First Enterprises: Why System Design Matters More Than AI Adoption
Sep 21, 2026

Building AI-First Enterprises: Why System Design Matters More Than AI Adoption

This blog explores how system design, architecture, and validation shape AI-first enterprises, while examining AI’s impact on software engineering and human decision-making.

Insight
The Product Studio in the AI Era: What Actually Changes | Sarika Gautam
Sep 21, 2026

The Product Studio in the AI Era: What Actually Changes | Sarika Gautam

What changes in product development when AI writes the code: the shift to architecture, the token cost of unplanned builds, and why juniors still matter.

Insight
AI and the Future of Digital Customer Experience: Where Technology Meets Human Creativity
Sep 18, 2026

AI and the Future of Digital Customer Experience: Where Technology Meets Human Creativity

A discussion on how AI, human creativity, research, and cross-functional collaboration are shaping the future of digital customer experience.

Insight
Scaling Down Before Scaling Up: Why Bigger Servers Don’t Fix Bad Architecture
Sep 17, 2026

Scaling Down Before Scaling Up: Why Bigger Servers Don’t Fix Bad Architecture

This blog explores how inefficient backend architecture can cause performance issues even under low traffic, covering practical ways to reduce database load, API latency, and resource usage before scaling infrastructure.

The Right Conversation Can

Save You Six Months.

Book a call