Techstore – React Native Shopify Full Integration App Docs

1.Introduction

All the features you will love

  • RN v0.55.4
  • Package lastest version
  • Account pages
  • Bookmark article
  • Image lazy load.
  • Setting layout from Shopify Store
  • Restructure folder
  • OneSignal Push Notification (removed in v1.2)
  • Shopify Full Integration
  • The Tech Store UI
  • Sidebar with multi-level Menu
  • Scroll horizontal multi-leve menu
  • Slider
  • Banner
  • Collection Screen
  • Product detail with multi option variants
  • Cart Screen
  • Checkout Screen
  • Infinite Lazy load
  • Clean code, no bullshit!
  • Best UI/UX Practices

Website & Video:

Supporting websitehttps://support.reactaz.com/techstore-react-…gration-app-docs/

Video demo: https://www.youtube.com/watch?v=HR05YJP0zDA

TechStore – React Native Shopify Full Integration Demo

2.Set Up

2.1.How to install a new source

In order to setup for React Native (RN) template you should connect to the internet and install dependencies library. If you have not chanced to set it up with React Native, please take a look to the document here: https://facebook.github.io/react-native/docs/getting-started.html

Step 1:  Installing

  • Unzip the downloaded code from Code Canyon.
  • Using the terminal, issue the following command.

npm install
This will install all the required modules for your app.

Step 2: Linking Libraries

Link your native dependencies:

$ react-native link

Done! All libraries with a native dependencies should be successfully linked to your iOS/Android project.

Step 3: Starting the server.

  • To simulate for iOS
    • Method One:
      • Open the project in XCode from ios/[yourProject].xcodeproj
      • Hit button to simulate.
    • Method Two: 
      • In your terminal, type:
        react-native run-ios
  • To simulate for Android
    • Make sure you have an Android emulator installed and running.
    • In your terminal, type:
      react-native run-android

 

2.2.Video Tutorial

Let’s see quick installing guide in the following video:

2.3.Set up Shopify store

Please refer these steps below to add TechStore source into Shopify theme:

    1. Download your current theme from your Shopify store.
    2. Backup theme source.
    3. Copy source code from theme folder to origin source.
    4. Then compress the source to zip file.
    5. Upload the theme to the store.
    6. Publish theme

Let’s see quick guide below to add TechStore source into Shopify theme:

Shopify Source Code (Liquid):
Download here: https://drive.google.com/open?id=1e0ujVCzdE6d4UGrcjLruxYMLpYAZ4hFc 
or check /Shopify_src_v1.2 folder in your package that download from Codecanyon.

Modifying Source code (Adding script & setting)

    1. To edit theme code: https://help.shopify.com/themes/customization
    2. Adding script to account page (video demo 2 page account.liquid&addresses.liquid, do the same for other pages):

    3. Adding setting app into theme:

Note:

Fixing common errors during buiding the app: “the module Ionicons could not be found within the package.”.

  1. rm ./node_modules/react-native/local-cli/core/fixtures/files/package.json
  2. restart packager.

Or you can refer this guide: https://github.com/oblador/react-native-vector-icons/issues/626#issuecomment-357405396

3.Shopify Full Integration

3.1.Config Shopify "Domain"

Step 1: Go to: …src\configs\constants.js
Step 2: Find out key “domainPublic” , change yours, Ex: https://ega-tech.myshopify.com

3.2.Create alternate templates Shopify

Step 1: Create an alternate  of collection and search template.

To create alternate templates, take a look to the document here: https://help.shopify.com/themes/customization/store/create-alternate-templates

Step 2: Copy and paste the code provided in your package purchase into your alternate template that you created.

Let’s see quick configuration guide in the following video:

4.How to use

4.1.Guide for setting app

  1. Changing app color:

  2. Changing menu:

4.2.Config Homepage

  1. Changing slider:
  2. Changing collection:

4.3.Adding a new module to home page

Step 1: at edit code, open file “collection.settings.gikApp.liquid”

Step 2: Find out key Global>HOMEPAGES_SHOPIFY>widgets, need to update widgets data by changing:

  • width: Set the Width of the image
  • height: Set the Height of the image
  • imgUrl: Paste your image URL (use for the collection_image type)
  • title: Add a display title
  • id: Add a  collection handle (If you do not know how to get handle, follow this guide: https://help.shopify.com/themes/liquid/basics/handle)
  • type: Choose which style you want to use. (ex: ‘collection_image‘;  ‘collection_scroll_horizontal‘)

4.4.Configurate Push Notification

  1. You need to setup OneSignal account to support pushnotification (https://onesignal.com)
  2. Install WordPress plugin to support push notification after publish a post: https://wordpress.org/plugins/onesignal-free-web-push-notifications/

  3. The download package has already configure all the setting for you, but you need to replace the APP_ID to integrate with your OneSignal account. You can also refer detail document here for setting up – https://github.com/geektimecoil/react-native-onesignal

4.5.Creating and Using a Custom Icon Font for Android

This method has the advantage of fonts being copied from this module at build time so that the fonts and JS are always in sync, making upgrades painless.

Edit android/app/build.gradle ( NOT android/build.gradle ) and add the following:

apply from: "../../node_modules/react-native-vector-icons/fonts.gradle"
To customize the files being copied, add the following instead:

project.ext.vectoricons = [
iconFontNames: [ 'MaterialIcons.ttf', 'EvilIcons.ttf' ] // Name of the font files you want to copy
]

apply from: “../../node_modules/react-native-vector-icons/fonts.gradle”

Option: Manually

Copy the contents in the Fonts folder to android/app/src/main/assets/fonts (note lowercase font folder).
Integrating library for getImageSource and ToolbarAndroid support

These steps are optional and only needed if you want to use the Icon.getImageSource function or using custom icons in the Icon.ToolbarAndroid component.

Edit android/settings.gradle to look like this (without the +):

rootProject.name = 'MyApp'
include ':app'
+ include ':react-native-vector-icons'
+ project(':react-native-vector-icons').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-vector-icons/android')

Edit android/app/build.gradle (note: app folder) to look like this (without the +):

apply plugin: 'com.android.application'
android {
...
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile "com.android.support:appcompat-v7:23.0.1"
compile "com.facebook.react:react-native:+" // From node_modules
+ compile project(':react-native-vector-icons')
}

Edit your MainApplication.java (deep in android/app/src/main/java/...) to look like this (note two places to edit )(without the +):

package com.myapp;
+ import com.oblador.vectoricons.VectorIconsPackage;
....
@Override
protected List<ReactPackage> getPackages() {
return Arrays.<ReactPackage>asList(
new MainReactPackage()
+ , new VectorIconsPackage()
);
}
}

Note: If you’re using React Native (Android) <= 0.17, follow this instructions

Option: With rnpm

$ react-native link

Note: Some users are having trouble using this method, try one of the others if you are too.

To config for IOS, see more: https://support.reactaz.com/knowledge-base/creating-and-using-a-custom-icon-font/

Source: https://github.com/oblador/react-native-vector-icons

4.6.Creating and Using a Custom Icon Font for IOS

Option: Manually

If you want to use any of the bundled icons, you need to add the icon fonts to your Xcode project. Just follow these steps:

Browse to node_modules/react-native-vector-icons and drag the folder Fonts (or just the ones you want) to your project in Xcode. Make sure your app is checked under “Add to targets” and that “Create groups” is checked if you add the whole folder.

Edit Info.plist and add a property called Fonts provided by application (or UIAppFonts if Xcode won’t autocomplete/not using Xcode) and type in the files you just added. It will look something like this:
XCode screenshot

Note: you need to recompile your project after adding new fonts, also ensure that they also appear under Copy Bundle Resources in Build Phases.

If you want to use the TabBar/NavigatorIOS integration or use getImageSource, then you need to add RNVectorIcons.xcodeproj to Libraries and add libRNVectorIcons.a to Link Binary With Libraries under Build Phases. More info and screenshots about how to do this is available in the React Native documentation.

Option: With CocoaPods

Add the following to your Podfile and run pod update:

pod 'RNVectorIcons', :path => 'node_modules/react-native-vector-icons'

Edit Info.plist as described above.

Option: With rnpm

$ react-native link

Note: Some users are having trouble using this method, try one of the others if you are too.

To configure for Android, see more: https://support.reactaz.com/knowledge-base/creating-and-using-a-custom-icon-font-for-android/

Suggest Edit