All Projects → mikepenz → storyblok-mp-SDK

mikepenz / storyblok-mp-SDK

Licence: Apache-2.0 license
Storyblok Kotlin Multiplatform SDK (Android, JVM, JS, iOS, ...)

Programming Languages

kotlin
9241 projects
ruby
36898 projects - #4 most used programming language

Projects that are alternatives of or similar to storyblok-mp-SDK

moko-graphics
Graphics primitives for mobile (android & ios) Kotlin Multiplatform development
Stars: ✭ 11 (-31.25%)
Mutual labels:  kotlin-native, kotlin-multiplatform
moko-network
Network components with codegeneration of rest api for mobile (android & ios) Kotlin Multiplatform development
Stars: ✭ 107 (+568.75%)
Mutual labels:  kotlin-native, kotlin-multiplatform
devtools-library
Multiplatform, pluggable, extensible, and dynamic config library which supports YAML and JSON as a source.
Stars: ✭ 15 (-6.25%)
Mutual labels:  kotlin-native, kotlin-multiplatform
MultiplatformPlayground
Kotlin Multiplatform project in Jetpack Compose & SwiftUI with shared ViewModel layer and File upload
Stars: ✭ 72 (+350%)
Mutual labels:  kotlin-native, kotlin-multiplatform
laravel-storyblok
Make Laravel and Storyblok work together beautifully.
Stars: ✭ 45 (+181.25%)
Mutual labels:  storyblok, storyblok-client
KMQTT
Embeddable and standalone Kotlin Multiplatform MQTT broker
Stars: ✭ 56 (+250%)
Mutual labels:  kotlin-native, kotlin-multiplatform
island-time
A Kotlin Multiplatform library for working with dates and times
Stars: ✭ 69 (+331.25%)
Mutual labels:  kotlin-native, kotlin-multiplatform
StarWars
Minimal GraphQL based Jetpack Compose, Wear Compose and SwiftUI Kotlin Multiplatform sample (using StarWars endpoint - https://graphql.org/swapi-graphql)
Stars: ✭ 165 (+931.25%)
Mutual labels:  kotlin-native, kotlin-multiplatform
kotlin-multiplatform-example
A Kotlin multiplatform example app that targets Android, ReactJS, iOS, JavaFx, and Spring Boot
Stars: ✭ 115 (+618.75%)
Mutual labels:  kotlin-native, kotlin-multiplatform
thelema-engine
Thelema - 3D graphics engine, written in Kotlin. Based on sources of libGDX.
Stars: ✭ 51 (+218.75%)
Mutual labels:  kotlin-native, kotlin-multiplatform
CompleteKotlin
Gradle Plugin to enable auto-completion and symbol resolution for all Kotlin/Native platforms.
Stars: ✭ 236 (+1375%)
Mutual labels:  kotlin-native, kotlin-multiplatform
moko-maps
Control your map from common code for mobile (android & ios) Kotlin Multiplatform development
Stars: ✭ 47 (+193.75%)
Mutual labels:  kotlin-native, kotlin-multiplatform
KotlinXcodeSync
Sync Kotlin files with an Xcode project
Stars: ✭ 25 (+56.25%)
Mutual labels:  kotlin-native, kotlin-multiplatform
kfsm
Finite State Machine in Kotlin
Stars: ✭ 76 (+375%)
Mutual labels:  kotlin-native, kotlin-multiplatform
kmm-production-sample
This is an open-source, mobile, cross-platform application built with Kotlin Multiplatform Mobile. It's a simple RSS reader, and you can download it from the App Store and Google Play. It's been designed to demonstrate how KMM can be used in real production projects.
Stars: ✭ 1,476 (+9125%)
Mutual labels:  kotlin-native, kotlin-multiplatform
libs.kmp.icerock.dev
Kotlin Multiplatform libraries list with info auto-fetch
Stars: ✭ 178 (+1012.5%)
Mutual labels:  kotlin-native, kotlin-multiplatform
moko-geo
Geolocation access for mobile (android & ios) Kotlin Multiplatform development
Stars: ✭ 41 (+156.25%)
Mutual labels:  kotlin-native, kotlin-multiplatform
KParser
Kotlin Multiplatform Arithmatic Parser
Stars: ✭ 32 (+100%)
Mutual labels:  kotlin-native, kotlin-multiplatform
moko-web3
Ethereum Web3 implementation for mobile (android & ios) Kotlin Multiplatform development
Stars: ✭ 32 (+100%)
Mutual labels:  kotlin-native, kotlin-multiplatform
kgql
GraphQL Document wrapper generator for Kotlin Multiplatform Project and Android
Stars: ✭ 54 (+237.5%)
Mutual labels:  kotlin-native, kotlin-multiplatform

storyblok-mp-SDK

... a Storyblok Client SDK written using Kotlin Multiplatform. (Android, JVM, JS, iOS, ...)



What's included 🚀About StoryblokSetup 🛠️Usage 🛠️License 📓


What's included 🚀

  • Super simple setup
  • Cross-platform ready
  • Lightweight

About Storyblok


Setup

Using Gradle

Multiplatform

For multiplatform projects specify this single dependency via Maven Central:

dependencies {
    implementation("com.mikepenz:storyblok-mp-sdk:${version}")
}

JVM

To use the storyblok SDK on JVM, you have to include:

dependencies {
    implementation("com.mikepenz:storyblok-mp-sdk-jvm:${version}")
}

Android

For Android a special dependency is provided:

dependencies {
    implementation("com.mikepenz:storyblok-mp-sdk-android:${version}")
}

iOS

For iOS you will have to use the Kotlin Native support and use the following dependency:

dependencies {
    implementation("com.mikepenz:storyblok-mp-sdk-ios:${version}")
}

JS

For JS (node-js) applications you will have to use the Kotlin JS support and the following dependency:

dependencies {
    implementation("com.mikepenz:storyblok-mp-sdk-js:${version}")
}


Usage

Init client

val client = Storyblok("your-storyblok-token")

General

This Kotlin multi platform library uses Kotlin coroutines for the requests (similar to the ktor API). All fetch methods are suspending functions, and need to be called respectively.

Load a story

client.fetchStory("full_slug:id:uuid")
// All storyblock params are supported, see javadoc for more information

Load a list of stories

client.fetchStories()
// All storyblock params are supported, see javadoc for more information

Load current space

client.fetchCurrentSpace()

Load a list of datasources

client.fetchDatasources()
// All storyblock params are supported, see javadoc for more information

Load a map of datasource entries

client.fetchDatasourceEntries()
// All storyblock params are supported, see javadoc for more information

Load a list of map of links with their uuid as key

client.fetchLinks()
// All storyblock params are supported, see javadoc for more information

Load a list of tags

client.fetchTags()
// All storyblock params are supported, see javadoc for more information

Libs used in android sample app:

Mike Penz:

Developed By

Contributors

This free, open source software was also made possible by a group of volunteers that put many hours of hard work into it. See the CONTRIBUTORS.md file for details.

Credits

Some parts of the Kotlin Multiplatform configurations are a result of various great resources on the internet. Including:

License

Copyright 2021 Mike Penz

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].