Published Nov 7, 2023 ⦁ 7 min read

SDK Empowers Platform Development

Introduction

The release of the new platform SDK marks a major milestone for developers building on our platform. With its improved ease of use and flexible architecture, the SDK makes it simpler than ever to leverage the full capabilities of our platform. Whether you're building mobile apps, web apps, IoT devices, or desktop software, the new SDK equips you to efficiently tap into the platform's services for identity, data, AI, communications, and more.

By standardizing access and removing complexity, the SDK accelerates development while maintaining the extensibility and performance our platform is known for. The modular design enables you to only use the specific parts your app requires, avoiding unnecessary bloat. This allows for lightweight, customizable SDKs tailored to your use case.

To help developers take advantage of everything the platform offers, the SDK provides convenient access to services like mapping, payments, and real-time chat. Common credentials and data models ensure a simplified experience across SDK clients. With robust cross-platform support, you can build for mobile, web, desktop, and devices using the same APIs.

For those just getting started, the DevHunt community offers valuable support, tutorials, and insights from other developers' experiences with the platform SDK. Let's explore how this tool can supercharge your apps.

Key Features

The platform SDK packs a host of capabilities to simplify app development. From modular design to cross-platform support, these features increase productivity and flexibility.

Modular Architecture

The SDK implements a modular architecture so you only need to use the specific parts your app requires. This avoids bloating your codebase with unnecessary components. The modular approach also makes the SDK easily extensible and customizable. You can build lightweight SDKs tailored to particular use cases or integrate with other frameworks.

SDK Core

The SDK Core contains essential utilities like configuration, logging, and networking. It provides the foundation for higher level SDK services.

Identity and Access Management

Managing user identity and access is handled by the Identity module. It encapsulates OAuth, social logins, and other authentication functionality.

For example, web apps can leverage social login to simplify registration and account creation. Mobile apps can enable biometric authentication like fingerprint scanning for easy secure access.

Storage

The Storage module offers simple APIs for saving user-generated content like images, videos, and other files on the platform cloud.

A media editing desktop app could use this to sync catalogs of images and videos to the cloud. Mobile apps can also leverage cloud storage for user data.

Real-time Communication

Enable audio/video chat, messaging, and other real-time experiences with the Communication module.

From in-app chat features to video calling capabilities, this module brings real-time engagement to apps. IoT devices could also leverage it for status updates.

Machine Learning

Access powerful ML capabilities like vision, language, predictions, and recommendations through the Intelligence module.

For instance, a mobile computer vision app could analyze images and recognize objects. Web apps can integrate predictions and personalization.

IoT Device SDKs

Specialized SDKs are available for embedded devices and hardware platforms.

Smart home devices can be controlled and updated over-the-air using these IoT SDKs. Robotics applications also benefit from hardware-optimized SDKs.

Platform API Access

The SDK provides convenient access to platform APIs for maps, social features, payments, and more. Common credentials can be shared across SDK clients. Usage is simplified with consistent data models and interfaces.

For example, a food delivery app could incorporate maps, social reviews, and payment processing through the SDK's platform API access.

Authentication

Developers no longer need to implement custom authentication logic. The SDK standardizes API key usage, token handling, and federated identity so you can focus on building app features.

Decide whether to use API keys, OAuth, identity federation, or another approach based on your app requirements. The SDK handles the implementation details.

Cross-Platform Support

Build mobile, web, desktop, and IoT apps using the same SDK APIs. The unified approach enables code reuse across platforms.

For instance, core business logic written once in JavaScript can be leveraged across iOS, Android, and web apps consuming the SDK.

Third Party Integrations

In addition to platform services, the SDK integrates with popular open source projects like TensorFlow, React, and OpenCV. Extensibility is core to the design.

You can enable advanced computer vision capabilities by bringing in TensorFlow models through the SDK's integrations.

Getting Started

To start benefiting from the platform SDK, there are a few requirements, installation steps, and best practices to consider. The DevHunt community is a great place to get help when first using the SDK.

Requirements

The SDK supports major platforms like iOS 12+ and Android 5+. Certain features may require specific OS versions or hardware capabilities. Check the documentation for details.

Installation

Add the SDK to your project using package managers like npm and NuGet. For native app development, you can also install platform-specific SDKs via Xcode, Android Studio, etc.

Setup

Initialize the SDK by importing packages and creating a config object with your credentials:

import { SDK } from 'platform-sdk'; 

const config = {
  apiKey: '...',
  // authPolicy, etc  
};

const sdk = new SDK(config);

Authentication

Decide whether to use API keys, OAuth, identity federation, or another approach. Configure clients accordingly.

Project Structure

Share SDK clients between components using dependency injection or global instances. Build facades to encapsulate SDK interactions.

Use Cases

Let's look at how the SDK applies to common application types.

Mobile Apps

Build location-aware apps with mapping services. Access device hardware like cameras and sensors. Engage users with push notifications. Enable biometric authentication like fingerprint login.

The SDK makes it easy to tap into these mobile-centric capabilities. For instance, quickly add a social feed or payment gateway using the platform API access.

Web Applications

Manage user registration and authentication with social logins. Store user-generated content in the cloud. Integrate payment processing. Add real-time chat and video conferencing.

These features can be smoothly incorporated into web apps using the Identity, Storage, Communications, and Platform API modules of the SDK.

Desktop Applications

Use the SDK to create cross-platform desktop apps. Access hardware like webcams and USB devices. Enable offline syncing by persisting data locally when offline. Build media cataloging and editing tools leveraging cloud storage.

The unified SDK APIs make building desktop apps with native-like capabilities simple. The same code can target Windows, Mac, Linux, and more.

IoT Devices

Implement over-the-air updates for seamless deployments. Collect device telemetry with protocols like MQTT. Run edge computing workloads closer to devices. Control equipment and robotics using hardware-focused SDKs.

The platform SDK caters to IoT development with specialized device SDKs and integrations tailored for embedded systems.

Resources

The SDK has extensive documentation, API references, and community channels to help you succeed. Check out the DevHunt community for tutorials and support from other developers.

Documentation

Consult getting started guides, sample code, tutorials, and reference materials. Documentation is available online and offline.

API References

Browse API references for JavaScript, Java, Swift, Objective-C, and other languages. The interactive API explorer simplifies discovery.

Community

Join the DevHunt community to connect with other developers. Attend virtual workshops and hackathons focused on the SDK.

Support

Get access to ticketed support and technical guidance based on your plan. Contact sales or reach out on social media for any inquiries.

Conclusion

The platform SDK makes it easier than ever to build sophisticated applications by abstracting away complexity. With its improved modular design, built-in platform API access, robust cross-platform support, and intuitive getting started experience, the SDK has something to offer every developer.

Whether you're looking to accelerate your workflows, expand to new platforms, or tap into advanced cloud capabilities, the SDK has you covered. The DevHunt community is a great place to get help when first starting out. We invite you to join our growing community of developers and creators who are building the next generation of apps powered by our platform.

Get started today and let us know how we can help you take your app to the next level!