Skip to content

hyperledger-identus/apollo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

License Kotlin Gradle

Apollo

A cryptography lib built with Kotlin Multiplatform with support for the following targets:

Packages

Sonatype NPM Swift

JVM Usage

In build.gradle.kts files include the dependency

repositories {
    mavenCentral()
}

For dependencies

dependencies {
    implementation("org.hyperledger.identus:apollo:<latest version>")
}

Swift usage

Using SPM

Inside your Package.swift file, add the following

dependencies: [
    .package(
        url: "[email protected]:hyperledger/identus-apollo.git",
        from: "<latest version>"
    )
]

Using generated xcframework directly

The following instruction using Xcode 15

  1. Go the Release Page and check the latest version and download the ApolloBinary.xcframework.zip file.
  2. Uncompress the downloaded file.
  3. Add the ApolloBinary.xcframework to your Xcode project.
  4. When asked select Copy items if needed.
  5. Then go to the project configuration page in Xcode and check the Frameworks and Libraries section and add the ApolloBinary.xcframework if not found then choose Embed & Sign.
  6. Then go to the build phase page and mark the framework as required.

[!WARNING] For Intel iOS simulator: You need to add the following flag as YES EMBEDDED_CONTENT_CONTAINS_SWIFT=YES on the target like so:

Package.swift

Package(
   ...
   targets: .testTarget(
      ...
      swiftSettings: [.define("EMBEDDED_CONTENT_CONTAINS_SWIFT=YES")]
      ...
   )
)

Node.js usage

Inside the package.json

{
    "dependencies": {
        "@hyperledger/identus-apollo": "<latest version>"
    }
}

How to use for another KMP (Kotlin Multiplatform) project

Using Groovy

In the project build.gradle

allprojects {
    repositories {
        // along with all the other current existing repos add the following
        mavenCentral()
    }
}

In the module build.gradle

kotlin {
    sourceSets {
        commonMain {
            dependencies {
                // This following is just an example you can import it as per you needs
                implementation 'org.hyperledger.identus:apollo:<latest version>'
            }
        }
    }
}

Using Kotlin DSL

In the project build.gradle.kts

allprojects {
    repositories {
        // along with all the other current existing repos add the following
        mavenCentral()
    }
}
kotlin {
    sourceSets {
        val commonMain by getting {
            dependencies {
                // This following is just an example you can import it as per you needs
                implementation("org.hyperledger.identus:apollo:<latest version>")
            }
        }
    }
}

How to use for Scala project

libraryDependencies += "org.hyperledger.identus" % "apollo-jvm" % "<latest version>"

Usage

Please have a look at unit tests, more samples will be added soon.

Building Apollo

See BUILDING.md for instructions on how to build Apollo from source.

Contributing to Apollo

See CONTRIBUTING.md and CODE_OF_CONDUCT.md for instructions on how to contribute

Cryptography Notice

This distribution includes cryptographic software. The country in which you currently reside may have restrictions on the import, possession, use, and/or re-export to another country, of encryption software. BEFORE using any encryption software, please check your country's laws, regulations and policies concerning the import, possession, or use, and re-export of encryption software, to see if this is permitted. See http://www.wassenaar.org/ for more information.

License

This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely.