toannhu / CSClient-RN

Clip-sub Client app, created using React Native

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Clip-sub Client - React Native

Clip-sub Client app, powered by React Native. With cross-platform support (iOS and Android). Originally created for fansubs websites to create their own fancy, colorful and interactive app.

The main aim of this project is to provide users (especially fansubs) a convenient framework to build their own apps. It integrates nicely with WordPress, using standard official Material Design on Android and Human UX Guideline on iOS.

  • Fetching and posting posts.
  • Reading comments / posting comments.
  • User registration / authentication.
  • Administration, managing pages / posts.
  • Consistent push notifications using OneSignal.
  • Fully-configurable theming system.
  • Editing and uploading avatar (through Gravatar).

Getting started

Minimum requirements:

  • iOS 8 or above.
  • Android v14 or above.
  • Xcode 8 (for iOS app packaging and building).
  • Mac OS (for iOS app).
  • NodeJS 4.5 or above (6 is preferred).

Clone the repository:

git clone https://github.com/Clip-sub/CSClient-RN.git

then:

cd CSClient-RN

then install the dependencies and modules, using NPM:

npm install

or Yarn:

yarn add

All native modules are already linked. You only have to install npm packages like above to start working. However if you get troubles with native modules, you can always unlink them whenever you like:

react-native unlink

Install necessary plugin on Wordpress back-end:

With CSClient-RN, we use two main plugins on server side to provide the REST API:

  • JSON API for cookie validation, nonce generator.
  • JSON API User for cookie authentication, user validation.
  • Wordpress REST API: Included with every Wordpress package from v4.7 onward.
  • OneSignal for cross-platform push notification service.
  • WP-Basic-Auth Using for user authentication after they have registered on your site.
  • Application Passwords for user-registration. With the design of WordPress API, there is no way to add an user without authenticating as a privileged user first (which I found weird). We also should not expose admin's password to anyone, so this is the best option for now.

About

Clip-sub Client app, created using React Native

License:MIT License


Languages

Language:JavaScript 95.4%Language:Objective-C 2.4%Language:Java 1.4%Language:Python 0.8%Language:Batchfile 0.1%