Exocore: A Distributed Private Application Framework

Exocore

Warning: Exocore is at a very early development stage, hence incomplete, unstable, and probably totally unsafe. Use at your own risk.

Exocore is a distributed applications framework with private and encrypted data storage. Think of it as an infrastructure that allows a user to own his own personal cloud that is extensible via WebAssembly applications and accessible via Web/Mobile/Backend SDKs. It is designed to be resilient to failures and will eventually allow offline usage (ex: on mobile).

Exocore is primarily built for Exomind, a personal knowledge management tool built in parallel to this project. Exocore is the application framework for Exomind.

The primary concept in Exocore is a Cell, which is a unique container for a user's applications and data.

A cell consists of:

  • Chain nodes manage replication and storage by using a blockchain data structure.
  • Store nodes manage indexation, querying, and mutation of the data (collocated with chain node).
  • Application host nodes run applications written in WebAssembly (collocated with store nodes)

Roadmap

v0.1 (in progress)

  • Chain storage and replication: Proof of concept
  • Transport: Proof of concept
  • Entity store: Proof of concept
  • Applications (WASM host): Proof of concept

v0.2

  • Cell management (Configuration replication)
  • Enhanced security (Chain encryption, configuration signatures, etc.)

v0.3 and beyond

  • Android SDK
  • Blob storage (IPFS)
  • Offline support

Dependencies

Build dependencies

  • On MacOS: Install Xcode and command lines tools
  • On Ubuntu: apt install build-essential pkg-config libssl-dev

Rust

  • Install using rustup
  • Install clippy and rustfmt: rustup component add clippy rustfmt

Cap'n Proto

  • On MacOS: brew install capnp
  • On Ubuntu: apt install capnproto

Protobuf

  • On MacOS: brew install protobuf swift-protobuf
  • On Ubuntu: apt install protobuf-compiler

Usage & configuration

CLI:

  • ./tools/install.sh or cd exo && cargo install --path . or grab latest released binary.

Configuration

  • Most commands require a node configuration file, for which an example can be found here: [./examples/node.yaml]. exo can also generate and manage configurations. See Quick start.
  • At a minimum, the config requires 2 keypairs: one for the node, one for the cell.
  • The node keypair is unique per node, while the cell keypair is shared among servers that host the cell.
  • See Quick start section for example 2 nodes setup.

Quick start

Create a Cell hosted on 2 nodes

On node 1

Generate configuration:

exo --dir ./node1 node init --name node1

Edit configuration to include unique and accessible addresses:

exo -d ./node1 config edit

Generate a cell:

exo -d ./node1 cell init --name my_cell

On node 2

Generate configuration:

exo --dir ./node2 node init --name node1

Edit configuration to include unique and accessible addresses. If both nodes are running on the same machine, make sure they have unique ports.

exo -d ./node2 config edit

Request to join the cell as a chain and store node. This will use exocore's discovery server (disco.exocore.io) to exchange configurations:

exo -d ./node2 cell join --chain --store

and copy the displayed discovery PIN.

On node 1:

Add node 2 to cell:

exo -d ./node1 cell node add

Paste node 2's discovery PIN and accept its join request.

Start both nodes:

  • Node 1: exo -d ./node1 daemon
  • Node 2: exo -d ./node2 daemon

Join the example web client

Install & run Exomind

Clients

Web

C

iOS

Documentation

Download Details:
Author: appaquet
Source Code: https://github.com/appaquet/exocore
License: Apache-2.0 License

#rust  #blockchain 

What is GEEK

Buddha Community

Exocore: A Distributed Private Application Framework

Top 15 Free JavaScript Frameworks for Web Applications

List of some useful JavaScript Frameworks and libraries for website, web apps, and mobile apps development, that developers should know about to make selection easier.
This article will help you understand the various types of JavaScript Framework available in the market. When it comes to choosing the best platform for you, it’s not only the number of features you need to consider but also its functionality. The ease with which it fits within your project is also an essential factor. The next step is to choose the framework that best fits your company requirements or you can select the best from the list of top web development companies to develop your product based on your requirements.

#javascript frameworks for web applications #web applications development companies #progressive javascript framework #javascript frameworks #javascript #frameworks

Roberta  Ward

Roberta Ward

1595344320

Wondering how to upgrade your skills in the pandemic? Here's a simple way you can do it.

Corona Virus Pandemic has brought the world to a standstill.

Countries are on a major lockdown. Schools, colleges, theatres, gym, clubs, and all other public places are shut down, the country’s economy is suffering, human health is on stake, people are losing their jobs and nobody knows how worse it can get.

Since most of the places are on lockdown, and you are working from home or have enough time to nourish your skills, then you should use this time wisely! We always complain that we want some ‘time’ to learn and upgrade our knowledge but don’t get it due to our ‘busy schedules’. So, now is the time to make a ‘list of skills’ and learn and upgrade your skills at home!

And for the technology-loving people like us, Knoldus Techhub has already helped us a lot in doing it in a short span of time!

If you are still not aware of it, don’t worry as Georgia Byng has well said,

“No time is better than the present”

– Georgia Byng, a British children’s writer, illustrator, actress and film producer.

No matter if you are a developer (be it front-end or back-end) or a data scientisttester, or a DevOps person, or, a learner who has a keen interest in technology, Knoldus Techhub has brought it all for you under one common roof.

From technologies like Scala, spark, elastic-search to angular, go, machine learning, it has a total of 20 technologies with some recently added ones i.e. DAML, test automation, snowflake, and ionic.

How to upgrade your skills?

Every technology in Tech-hub has n number of templates. Once you click on any specific technology you’ll be able to see all the templates of that technology. Since these templates are downloadable, you need to provide your email to get the template downloadable link in your mail.

These templates helps you learn the practical implementation of a topic with so much of ease. Using these templates you can learn and kick-start your development in no time.

Apart from your learning, there are some out of the box templates, that can help provide the solution to your business problem that has all the basic dependencies/ implementations already plugged in. Tech hub names these templates as xlr8rs (pronounced as accelerators).

xlr8rs make your development real fast by just adding your core business logic to the template.

If you are looking for a template that’s not available, you can also request a template may be for learning or requesting for a solution to your business problem and tech-hub will connect with you to provide you the solution. Isn’t this helpful 🙂

Confused with which technology to start with?

To keep you updated, the Knoldus tech hub provides you with the information on the most trending technology and the most downloaded templates at present. This you’ll be informed and learn the one that’s most trending.

Since we believe:

“There’s always a scope of improvement“

If you still feel like it isn’t helping you in learning and development, you can provide your feedback in the feedback section in the bottom right corner of the website.

#ai #akka #akka-http #akka-streams #amazon ec2 #angular 6 #angular 9 #angular material #apache flink #apache kafka #apache spark #api testing #artificial intelligence #aws #aws services #big data and fast data #blockchain #css #daml #devops #elasticsearch #flink #functional programming #future #grpc #html #hybrid application development #ionic framework #java #java11 #kubernetes #lagom #microservices #ml # ai and data engineering #mlflow #mlops #mobile development #mongodb #non-blocking #nosql #play #play 2.4.x #play framework #python #react #reactive application #reactive architecture #reactive programming #rust #scala #scalatest #slick #software #spark #spring boot #sql #streaming #tech blogs #testing #user interface (ui) #web #web application #web designing #angular #coronavirus #daml #development #devops #elasticsearch #golang #ionic #java #kafka #knoldus #lagom #learn #machine learning #ml #pandemic #play framework #scala #skills #snowflake #spark streaming #techhub #technology #test automation #time management #upgrade

Top 10 Web Application Frameworks

From a wide variety of Web Application Development Frameworks, it is eternally tough to pick the one framework that is completely satisfied with the project. Here, Top 10 Web Application Frameworks Describe in detail.

#web application frameworks #top web application frameworks #server-side web frameworks

Best Android Mobile App Development Frameworks

Are you looking for the best Android app development frameworks? Get the best Android app development frameworks that help to build the top-notch Android mobile app.

For more info:
Website: https://www.appcluesinfotech.com/
Email: info@appcluesinfotech.com
Call: +1-978-309-9910

#best android mobile app development frameworks #top mobile app development frameworks #android app development frameworks #top frameworks for android app development #most popular android app development frameworks #app development frameworks

Top Mobile App Development Frameworks in 2021

Do you need a high-quality and reliable framework to optimize the process? AppClues Infotech has created a list of top mobile app development frameworks to consider working with in the year 2021.

For more info:
Website: https://www.appcluesinfotech.com/
Email: info@appcluesinfotech.com
Call: +1-978-309-9910

#top mobile app development frameworks #top mobile app frameworks in 2021 #best mobile app development frameworks #best mobile app development frameworks #mobile development framework