Skip to content

Commit

Permalink
chore: set max line length to 120 (#7)
Browse files Browse the repository at this point in the history
  • Loading branch information
MatejVukosav authored Jul 10, 2024
1 parent 4d38602 commit 9691419
Show file tree
Hide file tree
Showing 53 changed files with 1,284 additions and 420 deletions.
5 changes: 5 additions & 0 deletions .prettierignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# Ignore artifacts:
build
coverage
node_modules
.docusaurus
53 changes: 30 additions & 23 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,42 +1,47 @@
# Project Documentation

Welcome to the documentation directory for Calimero Network. This directory contains all the necessary files to build and run the project documentation locally, contribute changes, and deploy updates.
Welcome to the documentation directory for Calimero Network. This directory
contains all the necessary files to build and run the project documentation
locally, contribute changes, and deploy updates.

## Getting Started

Follow these steps to get started with the documentation:

### Prerequisites

- Ensure you have [Node.js](https://nodejs.org/) installed (version 18 or later).
- [pnpm](https://pnpm.io/) is our package manager of choice. If you don't have it installed, follow the [installation instructions](https://pnpm.io/installation).
- Ensure you have [Node.js](https://nodejs.org/) installed (version 18 or
later).
- [pnpm](https://pnpm.io/) is our package manager of choice. If you don't have
it installed, follow the
[installation instructions](https://pnpm.io/installation).

### Installation

1. Clone the repository (if you haven't already):
1. Clone the repository (if you haven't already):

```bash
git clone https://github.com/calimero-network.git
cd yourproject/docs
```
```bash
git clone https://github.com/calimero-network.git
cd yourproject/docs
```

2. Install the dependencies:
2. Install the dependencies:

```bash
pnpm install
```

3. Running the Documentation Locally
To start a local development server and open the documentation in your browser:
3. Running the Documentation Locally To start a local development server and
open the documentation in your browser:

```bash
pnpm start
```
```bash
pnpm start
```

This command starts a local development server and opens up a browser window. Most changes are reflected live without having to restart the server.
This command starts a local development server and opens up a browser window.
Most changes are reflected live without having to restart the server.

1. Contributing
We welcome contributions to our documentation! To contribute:
1. Contributing We welcome contributions to our documentation! To contribute:

Create a branch for your changes:

Expand All @@ -56,17 +61,19 @@ Push your branch and open a pull request against the main branch.

1. Deployment

This command builds the documentation and pushes it to the gh-pages branch, automatically updating the live documentation site.
This command builds the documentation and pushes it to the gh-pages branch,
automatically updating the live documentation site.

### Structure

docs/: Contains the Markdown files for the documentation.
blog/: Contains the Markdown files for the blog.
sidebars.js: Configures the documentation sidebar. Currently autogenerated.
docusaurus.config.js: Contains configuration for Docusaurus, including theme and plugin settings.
docs/: Contains the Markdown files for the documentation. blog/: Contains the
Markdown files for the blog. sidebars.js: Configures the documentation sidebar.
Currently autogenerated. docusaurus.config.js: Contains configuration for
Docusaurus, including theme and plugin settings.

### Support

If you encounter any issues or have questions about contributing to the documentation, please open an issue on GitHub.
If you encounter any issues or have questions about contributing to the
documentation, please open an issue on GitHub.

Thank you for contributing to Calimero Network's documentation!
37 changes: 29 additions & 8 deletions docs/01-explore/01-intro.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -5,30 +5,51 @@ title: Introduction

## Welcome to Our Project Documentation

Welcome to our comprehensive documentation.
Here, you'll find all the resources and guidance needed to understand and engage with our technology. Whether you are new to privacy technology or looking to deepen your existing knowledge, this documentation is structured to assist you every step of the way.
Welcome to our comprehensive documentation. Here, you'll find all the resources
and guidance needed to understand and engage with our technology. Whether you
are new to privacy technology or looking to deepen your existing knowledge, this
documentation is structured to assist you every step of the way.

Our documentation is divided into several key sections, each designed to provide you with detailed insights and practical tools:
Our documentation is divided into several key sections, each designed to provide
you with detailed insights and practical tools:

### Explore

Explore is your starting point for smoothly moving between our documentation sections. Here, you'll get a quick overview of what each part covers. Dive into our Manifesto to understand our key beliefs. Then, jump into the Developers Quickstart for simple steps to get hands-on with our product if you prefer to dive into example first.
Explore is your starting point for smoothly moving between our documentation
sections. Here, you'll get a quick overview of what each part covers. Dive into
our Manifesto to understand our key beliefs. Then, jump into the Developers
Quickstart for simple steps to get hands-on with our product if you prefer to
dive into example first.

### Learn

This section is your gateway to understanding our technology and foundational privacy principles. It provides a structured approach to learning, from system architecture and essential terminology to in-depth exploration of both basic and complex privacy concepts. It also addresses the limitations of our technology, ensuring you have a comprehensive understanding.
This section is your gateway to understanding our technology and foundational
privacy principles. It provides a structured approach to learning, from system
architecture and essential terminology to in-depth exploration of both basic and
complex privacy concepts. It also addresses the limitations of our technology,
ensuring you have a comprehensive understanding.

### Build

The "Build" section equips you with the necessary tools and documentation to start creating applications using our technology. It features a quickstart guide for immediate setup, detailed descriptions of our SDKs for Rust and TypeScript, and insights into our protocol, catering to developers at all skill levels.
The "Build" section equips you with the necessary tools and documentation to
start creating applications using our technology. It features a quickstart guide
for immediate setup, detailed descriptions of our SDKs for Rust and TypeScript,
and insights into our protocol, catering to developers at all skill levels.

### Contribute

In the "Contribute" section, we invite you to actively participate in the development and improvement of our project. It provides detailed instructions on how to use GitHub for contributions, including environment setup, submission of changes, and community guidelines. Information on hackathons and available bounties is also included to engage with our community further.
In the "Contribute" section, we invite you to actively participate in the
development and improvement of our project. It provides detailed instructions on
how to use GitHub for contributions, including environment setup, submission of
changes, and community guidelines. Information on hackathons and available
bounties is also included to engage with our community further.

### Resources

Our "Resources" section serves as a comprehensive directory of additional materials, including detailed documentation, community forums, and external readings. It is designed to support your ongoing learning and application of our technology.
Our "Resources" section serves as a comprehensive directory of additional
materials, including detailed documentation, community forums, and external
readings. It is designed to support your ongoing learning and application of our
technology.

### Next steps

Expand Down
31 changes: 26 additions & 5 deletions docs/01-explore/04-why-not/01-blockchain.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,35 @@ title: Blockchain

## Why not Blockchain?

By virtue of blockchain principles, there's a couple of issues that arise. The major one being that everyone has to agree on the state of the canonical chain, and therefore there can be only one network actor at any given time. Different chains implement different strategies for electing this actor to alleviate the risk of compromise, but the fundamental issue remains, and hence, the long-standing problem of scalability.
By virtue of blockchain principles, there's a couple of issues that arise. The
major one being that everyone has to agree on the state of the canonical chain,
and therefore there can be only one network actor at any given time. Different
chains implement different strategies for electing this actor to alleviate the
risk of compromise, but the fundamental issue remains, and hence, the
long-standing problem of scalability.

## Calimero vs Blockchain

Calimero fundamentally rethinks the problem and offers an alternative approach, local-first execution with eventual consistency. This means that each actor can independently drive their own local state, and the network will eventually reconcile to the same state. Essentially pegging the scalability threshold to the number of actors in the network, and executions are practically instantaneous.
Calimero fundamentally rethinks the problem and offers an alternative approach,
local-first execution with eventual consistency. This means that each actor can
independently drive their own local state, and the network will eventually
reconcile to the same state. Essentially pegging the scalability threshold to
the number of actors in the network, and executions are practically
instantaneous.

State reconciliation is context-aware, meaning that all activity revolves around an instance of an app. This means that participants of a context only have to synchronize with each other, and not the entire network. This is in stark contrast to blockchains, where everyone is forced to synchronize with everyone else and this competition is reflected in gas fees. Calimero doesn't have gas fees, and the cost of execution is directly borne by the actor.
State reconciliation is context-aware, meaning that all activity revolves around
an instance of an app. This means that participants of a context only have to
synchronize with each other, and not the entire network. This is in stark
contrast to blockchains, where everyone is forced to synchronize with everyone
else and this competition is reflected in gas fees. Calimero doesn't have gas
fees, and the cost of execution is directly borne by the actor.

Blockchains achieve integrity through transparency, which is a double-edged sword, essentially precluding you from using it in private environments. Calimero however, leverages the direct-actor relationship to encrypt all network traffic between them, and therefore, the network is inherently private.
Blockchains achieve integrity through transparency, which is a double-edged
sword, essentially precluding you from using it in private environments.
Calimero however, leverages the direct-actor relationship to encrypt all network
traffic between them, and therefore, the network is inherently private.

Calimero is also designed to be embeddable, meaning that client apps themselves become the network actors, and the network is the app itself. This is in stark contrast to blockchains, where the network is a separate entity from the client apps.
Calimero is also designed to be embeddable, meaning that client apps themselves
become the network actors, and the network is the app itself. This is in stark
contrast to blockchains, where the network is a separate entity from the client
apps.
4 changes: 3 additions & 1 deletion docs/01-explore/04-why-not/02-ipfs.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -9,4 +9,6 @@ IPFS is a storage solution, it's not designed for generic compute.

## Calimero vs IPFS

Calimero is designed to be a general-purpose compute engine that can be used to build a wide variety of applications. Also worth noting that Calimero does offer a way to store encrypted data, effectively making it a storage solution as well.
Calimero is designed to be a general-purpose compute engine that can be used to
build a wide variety of applications. Also worth noting that Calimero does offer
a way to store encrypted data, effectively making it a storage solution as well.
10 changes: 8 additions & 2 deletions docs/01-explore/04-why-not/03-zk.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,14 @@ title: ZK

## Why not ZK?

Zero-Knowledge (ZK) solutions focus on enhancing privacy and reducing the need to reveal data during synchronization, but they don't eliminate the need for synchronization itself.
Zero-Knowledge (ZK) solutions focus on enhancing privacy and reducing the need
to reveal data during synchronization, but they don't eliminate the need for
synchronization itself.

## Calimero vs ZK

Calimero offers a fundamentally different approach with local-first execution and eventual consistency, minimizing synchronization overhead. Additionally, ZK solutions can complement Calimero by providing enhanced privacy features within its framework, offering the best of both worlds without inheriting the synchronization complexities of traditional ZK implementations.
Calimero offers a fundamentally different approach with local-first execution
and eventual consistency, minimizing synchronization overhead. Additionally, ZK
solutions can complement Calimero by providing enhanced privacy features within
its framework, offering the best of both worlds without inheriting the
synchronization complexities of traditional ZK implementations.
5 changes: 4 additions & 1 deletion docs/01-explore/05-use-cases/00-private-dao-management.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,7 @@ id: private-daos-management
title: Private DAOs Management
---

Migrate sensitive on-chain and off-chain data into a DAO-owned private Calimero application, enabling you to interact with the base chain of the DAO. DAO members keep the core contract logic on-chain, while shielding all the sensitive data.
Migrate sensitive on-chain and off-chain data into a DAO-owned private Calimero
application, enabling you to interact with the base chain of the DAO. DAO
members keep the core contract logic on-chain, while shielding all the sensitive
data.
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,9 @@ id: decentralized-voting-systems
title: Decentralized Voting Systems
---

Enhance trust in voting by creating a secure and tamper-proof voting process application, ensuring each vote is counted accurately and cannot be altered. This technology enhances trust in voting by providing verifiable and immutable records while protecting voter privacy. It empowers voters, reduces the risk of fraud, and promotes democratic participation through a transparent and secure voting platform.
Enhance trust in voting by creating a secure and tamper-proof voting process
application, ensuring each vote is counted accurately and cannot be altered.
This technology enhances trust in voting by providing verifiable and immutable
records while protecting voter privacy. It empowers voters, reduces the risk of
fraud, and promotes democratic participation through a transparent and secure
voting platform.
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,8 @@ id: decentralized-social-platforms
title: Decentralized Social Platforms
---

Build social experiences which need scalable but private data like social groups, direct messages and others, while eliminating high transaction costs (gas fees associated with blockchains). This can include exclusive groups and gated communities based on ownership of NFTs or token payments which would allow participation and decryption of the community data content.
Build social experiences which need scalable but private data like social
groups, direct messages and others, while eliminating high transaction costs
(gas fees associated with blockchains). This can include exclusive groups and
gated communities based on ownership of NFTs or token payments which would allow
participation and decryption of the community data content.
5 changes: 4 additions & 1 deletion docs/01-explore/05-use-cases/03-deprod.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,7 @@ id: deprod
title: Decentralized Productivity (DeProd) SaaS
---

Create a decentralized productivity tools suite by self hosting your data on Calimero’s private applications and move away from the control of centralized entities. The new platform would mitigate the burden of lifetime deals and hard migration processes for the current users of Productivity SaaS solutions.
Create a decentralized productivity tools suite by self hosting your data on
Calimero’s private applications and move away from the control of centralized
entities. The new platform would mitigate the burden of lifetime deals and hard
migration processes for the current users of Productivity SaaS solutions.
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,7 @@ id: decentralized-gig-economy
title: Decentralized Gig Economy
---

Disrupt the current gig economy players and compose a fully decentralized ride sharing, freelancing, temporary work, mechanical turk platform, or any other shared economy model where each network participant gets their fair share of the profits.
Disrupt the current gig economy players and compose a fully decentralized ride
sharing, freelancing, temporary work, mechanical turk platform, or any other
shared economy model where each network participant gets their fair share of the
profits.
4 changes: 3 additions & 1 deletion docs/01-explore/05-use-cases/05-trustless-gaming.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,6 @@ id: trustless-gaming
title: Trustless Gaming
---

Resolve the transparency and verification problems in games with turn mechanics (i.e. Battleship), and in those where private data holds significant importance (i.e. poker).
Resolve the transparency and verification problems in games with turn mechanics
(i.e. Battleship), and in those where private data holds significant importance
(i.e. poker).
16 changes: 14 additions & 2 deletions docs/01-explore/05-use-cases/06-decentralized-edge-compute.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,18 @@ id: decentralized-edge-compute
title: Decentralized Edge Compute
---

Most of the general compute today happens on cloud service because that is where most of the data lives. With Calimero, all the applications data is stored locally, whereas Calimero enables edge compute on that data. Combined with the use of decentralized AI and Edge Inference LLMs, there are numerous use cases how Calimero can enhance user experience: Edge AI on users data for social spam filtering, e-commerce shopping recommendations across channels, to name a few. This would allow users to finally maximize the endless possibilities from their data, on their own rules.
Most of the general compute today happens on cloud service because that is where
most of the data lives. With Calimero, all the applications data is stored
locally, whereas Calimero enables edge compute on that data. Combined with the
use of decentralized AI and Edge Inference LLMs, there are numerous use cases
how Calimero can enhance user experience: Edge AI on users data for social spam
filtering, e-commerce shopping recommendations across channels, to name a few.
This would allow users to finally maximize the endless possibilities from their
data, on their own rules.

For example, when you used to purchase from a certain merchant, the data was fully controlled by that merchant or the platform where the data was hosted, which would yield to your recommendations being exclusively tied to that merchant. But if the data would have lived on your device, your data recommendations would have been across various market channels, and not exclusively tied to that specific merchant.
For example, when you used to purchase from a certain merchant, the data was
fully controlled by that merchant or the platform where the data was hosted,
which would yield to your recommendations being exclusively tied to that
merchant. But if the data would have lived on your device, your data
recommendations would have been across various market channels, and not
exclusively tied to that specific merchant.
Loading

0 comments on commit 9691419

Please sign in to comment.