Giter Club home page Giter Club logo

couchbase-lite-peer-to-peer-sync-examples's Introduction

Inventory Sample: Peer-to-Peer Sync

Overview

Sample apps that demonstrate out-of-box websockets listener based peer-to-peer database sync functionality introduced in Couchbase Lite 2.8.

Introduction

Couchbase Lite supports out-of-the-box support for secure Peer-to-Peer Sync , over websockets directly between Couchbase Lite enabled clients in IP-based networks without the need for a centralized control point (i.e. no Sync Gateway or Couchbase server required)

iOS Inventory App Tutorial in Swift

Prerequisites

This tutorial assumes familiarity with building swift apps with Xcode and with Couchbase Lite.

  • If you are unfamiliar with the basics of Couchbase Lite, it is recommended that you follow the Getting Started guide

  • iOS (Xcode 12.5+)

  • Wi-Fi network that the peers can communicate over

    • You could run your peers in multiple simulators. But if you were running the app on real devices, then you will need to ensure that the devices are on the same WiFi network

Installation and Code Walkthrough

The complete step by step tutorial is available here

NOTE:Apps for other platforms coming soon

couchbase-lite-peer-to-peer-sync-examples's People

Contributors

amarantha-k avatar bridgei avatar ibsoln avatar jayahariv avatar rajagp avatar richardsmedley avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

couchbase-lite-peer-to-peer-sync-examples's Issues

Description contents inside `TLSSettingsData.cs` file are incorrect.

Description content inside TLSSettingsData.cs file has been swapped.

Current descriptions are:

                new TLSSetting(){Index = 1, Setting = LISTENER_CERT_VALIDATION_MODE.ENABLE_VALIDATION_WITH_CERT_PINNING.ToString(), Description="If the listener cert is from well known CA then you will use this mode. Of course, in our sample app, the listener cert as specified in listener-cert-pkey is a self signed cert - so you probably will not use this mode to test. But if you have a CA signed cert, you can configure your listener with the CA signed cert and use this mode to test. Communication is encrypted"},
                new TLSSetting(){Index = 2, Setting = LISTENER_CERT_VALIDATION_MODE.ENABLE_VALIDATION.ToString(), Description="In this mode, the app uses the pinned cert,listener-pinned-cert.cer that is bundled in the app to validate the listener identity. Only the server cert that exactly matches the pinned cert will be authenticated. Communication is encrypted"}

should be:

                new TLSSetting(){Index = 1, Setting = LISTENER_CERT_VALIDATION_MODE.ENABLE_VALIDATION_WITH_CERT_PINNING.ToString(), Description="In this mode, the app uses the pinned cert,listener-pinned-cert.cer that is bundled in the app to validate the listener identity. Only the server cert that exactly matches the pinned cert will be authenticated. Communication is encrypted"},
                new TLSSetting(){Index = 2, Setting = LISTENER_CERT_VALIDATION_MODE.ENABLE_VALIDATION.ToString(), Description="If the listener cert is from well known CA then you will use this mode. Of course, in our sample app, the listener cert as specified in listener-cert-pkey is a self signed cert - so you probably will not use this mode to test. But if you have a CA signed cert, you can configure your listener with the CA signed cert and use this mode to test. Communication is encrypted"}

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.