explaingit

100apps/openshare

Analysis updated 2026-05-18

3,622Objective-CAudience · developerComplexity · 2/5LicenseSetup · moderate

TLDR

An Objective-C iOS library for sharing content to WeChat, QQ, Weibo, and Renren without integrating each platform's bulky official SDK.

Mindmap

mindmap
  root((OpenShare))
    What it does
      Share to Chinese social apps
      Avoids official SDKs
      Uses iOS URL schemes
    Tech stack
      Objective-C
      CocoaPods
      iOS
    Use cases
      Share text image or link
      WeChat OAuth login
      Alipay payment
    Audience
      iOS developers

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Add a share-to-WeChat button to an iOS app without the full WeChat SDK

USE CASE 2

Let users log into an iOS app using their WeChat account via OAuth

USE CASE 3

Accept payments through Alipay from within an iOS app

USE CASE 4

Add support for a new sharing platform using the plugin template

What is it built with?

Objective-CiOSCocoaPods

How does it compare?

100apps/opensharenst/runtimebrowsersyncthing/syncthing-macos
Stars3,6223,6533,670
LanguageObjective-CObjective-CObjective-C
Setup difficultymoderatemoderateeasy
Complexity2/53/51/5
Audiencedeveloperdevelopergeneral

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 1h+

Requires registering app IDs with each social platform before sharing works.

GPLv3: you can use and modify the code, but any derivative work you distribute must also be open source under GPLv3.

In plain English

OpenShare is an iOS library for sharing content to Chinese social platforms, specifically WeChat, QQ, Sina Weibo, and Renren, without needing to include each platform's official SDK. The library is written in Objective-C and was built to solve a practical problem the author encountered during iOS development. The usual approach to sharing content from an iOS app to WeChat or QQ is to download and integrate the official SDK from each company. Those SDKs can be large, sometimes larger than the app itself, and they require following each vendor's specific integration steps. OpenShare sidesteps this by communicating directly with the installed app on the device using iOS's URL scheme system, which lets apps pass data to each other without going through an intermediate server or REST API. The library is intentionally small, covering only commonly used and general-purpose functionality. Integration through CocoaPods takes a single line. After registering your app IDs for each platform and adding a few lines to the app delegate, you can share text, images, or links to any supported platform using a consistent API. The response from the social app comes back as a callback block, so you handle success and failure in the same place you trigger the share, rather than dealing with platform-specific callback methods scattered across the app. Beyond sharing, OpenShare also supports OAuth login via WeChat and payment through Alipay. The design is plugin-based, so adding support for additional platforms means creating a category file using a provided template rather than modifying the core library. The library is distributed under the GPLv3 license. The README notes that Facebook and Twitter support was planned but not completed, and the author acknowledges that the inter-app communication protocols required some reverse-engineering since each vendor's implementation differs.

Copy-paste prompts

Prompt 1
Show me how to add OpenShare to an iOS project via CocoaPods and share text to WeChat
Prompt 2
Write Objective-C code using OpenShare to implement WeChat OAuth login
Prompt 3
Explain how OpenShare's plugin-based design lets me add a new social platform
Prompt 4
Walk me through registering app IDs for WeChat and QQ to use with OpenShare

Frequently asked questions

What is openshare?

An Objective-C iOS library for sharing content to WeChat, QQ, Weibo, and Renren without integrating each platform's bulky official SDK.

What language is openshare written in?

Mainly Objective-C. The stack also includes Objective-C, iOS, CocoaPods.

What license does openshare use?

GPLv3: you can use and modify the code, but any derivative work you distribute must also be open source under GPLv3.

How hard is openshare to set up?

Setup difficulty is rated moderate, with roughly 1h+ to a first successful run.

Who is openshare for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.