git » sdk

Borogove SDK

git clone https://borogove.dev/src/r/sdk

Borogove

Working towards simplicity in developing Snikket-compatible apps.

make hx-build-dep
make

JavaScript / TypeScript

npm subdirectory will contain installable package for browser or nodejs after build.

Also Typescript typings are generated which include documenation comments.

npm install https://gitpkg-singpolyma.vercel.app/snikket-im/snikket-sdk/npm?compiled

There is a known bug in one of our JavaScript dependencies for browser builds, if xmpp.js is <= 0.14.0 then you may need something like this vite.config.js example

resolve: {
    alias: {
        // https://github.com/xmppjs/xmpp.js/issues/1093
        "node:dns": "./src/dns-stub.js",
    },
},

And then the stub:

export default {
    lookup: (x, y, cb) => cb(null, []),
    resolveSrv: (x, cb) => cb(null, []),
};

C

libborogove.so and cpp/borogove.h, the latter has documentation comments.

Alternately there is also libborogove.batteriesincluded.so which vendors some dependencies. Or libborogove.a which is a static library.

If you want to build on a system that does not have haxe:

make cpp

The the cpp folder will contain C++ code and a Makefile with no haxe dependency.

Alpine package

Swift

libborogove.so and cpp/borogove.h are wrapped by cpp/Borogove.swift

See also the SwiftPM Package.

Used By Apps Such As


tree
.builds/
.github/
borogove/
build-misc/
cpp/
doc/
docs/
npm/
test/
.gitignore 183
COPYING 11358
HaxeCBridge.hx 85849
HaxeSwiftBridge.hx 32302
Makefile 5403
README.md 1699
browserjs.hxml 400
cpp.hxml 432
haxedoc.hxml 197
mkdocs.yml 763
nodejs.hxml 411
optional-sqlite-types.awk 523
optional-sqlite.awk 2163
test.hxml 240
xlocale.patch 408

branches
main
omemo
compiled
strophe-fast