Rust implementation of NextGraph, a Decentralized and local-first web 3.0 ecosystem https://nextgraph.org
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
nextgraph-rs/ng-app-js
Niko 960cdf3189 broker singleton and timeout management (for tests and prod) 2 years ago
..
app-node reorganize crates 2 years ago
app-react reorganize crates 2 years ago
app-web reorganize crates 2 years ago
src broker singleton and timeout management (for tests and prod) 2 years ago
Cargo.toml broker singleton and timeout management (for tests and prod) 2 years ago
LICENSE-APACHE2 reorganize crates 2 years ago
LICENSE-MIT reorganize crates 2 years ago
README.md new WS client connection, working from WASM too 2 years ago
index.html new WS client connection, working from WASM too 2 years ago
prepare-node.js reorganize crates 2 years ago

README.md

ng-app-js

JS/WASM module of NextGraph (SDK and apps)

NextGraph

NextGraph brings about the convergence between P2P and Semantic Web technologies, towards a decentralized, secure and privacy-preserving cloud, based on CRDTs.

This open source ecosystem provides solutions for end-users and software developers alike, wishing to use or create decentralized apps featuring: live collaboration on rich-text documents, peer to peer communication with end-to-end encryption, offline-first, local-first, portable and interoperable data, total ownership of data and software, security and privacy. Centered on repositories containing semantic data (RDF), rich text, and structured data formats like JSON, synced between peers belonging to permissioned groups of users, it offers strong eventual consistency, thanks to the use of CRDTs. Documents can be linked together, signed, shared securely, queried using the SPARQL language and organized into sites and containers.

More info here https://nextgraph.org

JS/WASM module

This module is part of the SDK of NextGraph.

It is composed of

  • the npm package ng-app-js which is the SDK
  • the plain JS web app app-web
  • the React web app app-react
  • the node-js app app-node

Support

Documentation can be found here https://docs.nextgraph.org

And our community forum where you can ask questions is here https://forum.nextgraph.org

For developers

Read our getting started guide.

npm i ng-app-js-sdk

For contributors

wasm-pack build --target bundler
cd pkg
// if you have access to npm registry and want to publish the package 
// npm publish --access=public

cd ..
wasm-pack build -t nodejs -d pkg-node
node prepare-node.js
cd pkg-node
// if you have access to npm registry and want to publish the package 
// npm publish --access=public

For testing in vanilla JS

wasm-pack build --target web -d web
python3 -m http.server
// open http://localhost:8000

Or automated testing with headless chrome:

wasm-pack test --chrome --headless

Plain JS web app

cd ../app-web
// for local development
npm install --no-save ../pkg 
// or, for install from npm registry: npm install
npm start

Open this URL in browser : http://localhost:8080

React web app

cd ../app-react
// for local development
npm install --no-save ../pkg
// or, for install from npm registry: npm install
npm run dev

Open this URL in browser : http://localhost:8080

NodeJS app

cd ../app-node
// for local development
npm install --no-save ../pkg-node
// or, for install from npm registry: npm install
npm run start

Contributions license

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you shall be dual licensed as below, without any additional terms or conditions.s

License

Licensed under either of

SPDX-License-Identifier: Apache-2.0 OR MIT


NextGraph received funding through the NGI Assure Fund, a fund established by NLnet with financial support from the European Commission's Next Generation Internet programme, under the aegis of DG Communications Networks, Content and Technology under grant agreement No 957073.