2022-06-23 21:45:42 +00:00
# Codex Decentralized Durability Engine
2024-10-03 08:55:54 +00:00
> The Codex project aims to create a decentralized durability engine that allows persisting data in p2p networks. In other words, it allows storing files and data with predictable durability guarantees for later retrieval.
2022-06-23 21:45:42 +00:00
> WARNING: This project is under active development and is considered pre-alpha.
2022-05-10 20:41:44 +00:00
[![License: Apache ](https://img.shields.io/badge/License-Apache%202.0-blue.svg )](https://opensource.org/licenses/Apache-2.0)
[![License: MIT ](https://img.shields.io/badge/License-MIT-blue.svg )](https://opensource.org/licenses/MIT)
[![Stability: experimental ](https://img.shields.io/badge/stability-experimental-orange.svg )](#stability)
2023-08-27 04:22:09 +00:00
[![CI ](https://github.com/codex-storage/nim-codex/actions/workflows/ci.yml/badge.svg?branch=master )](https://github.com/codex-storage/nim-codex/actions/workflows/ci.yml?query=branch%3Amaster)
[![Docker ](https://github.com/codex-storage/nim-codex/actions/workflows/docker.yml/badge.svg?branch=master )](https://github.com/codex-storage/nim-codex/actions/workflows/docker.yml?query=branch%3Amaster)
[![Codecov ](https://codecov.io/gh/codex-storage/nim-codex/branch/master/graph/badge.svg?token=XFmCyPSNzW )](https://codecov.io/gh/codex-storage/nim-codex)
2022-06-23 21:45:42 +00:00
[![Discord ](https://img.shields.io/discord/895609329053474826 )](https://discord.gg/CaJTh24ddQ)
2023-08-27 04:22:09 +00:00
![Docker Pulls ](https://img.shields.io/docker/pulls/codexstorage/nim-codex )
2022-06-23 21:45:42 +00:00
## Build and Run
2024-09-29 14:38:57 +00:00
For detailed instructions on preparing to build nim-codex see [*Build Codex* ](https://docs.codex.storage/learn/build ).
2022-08-19 02:40:11 +00:00
2022-06-23 21:45:42 +00:00
To build the project, clone it and run:
```bash
2023-03-28 00:08:13 +00:00
make update & & make
2022-06-23 21:45:42 +00:00
```
2024-10-03 08:55:54 +00:00
The executable will be placed under the `build` directory under the project root.
2022-06-23 21:45:42 +00:00
Run the client with:
```bash
2022-08-19 02:40:11 +00:00
build/codex
2022-06-23 21:45:42 +00:00
```
2023-05-02 13:06:34 +00:00
## Configuration
It is possible to configure a Codex node in several ways:
1. CLI options
2024-10-03 08:55:54 +00:00
2. Environment variables
3. Configuration file
2023-05-02 13:06:34 +00:00
2024-10-03 08:55:54 +00:00
The order of priority is the same as above: CLI options --> Environment variables --> Configuration file.
2023-05-02 13:06:34 +00:00
2024-10-03 08:55:54 +00:00
Please check [documentation ](https://docs.codex.storage/learn/run#configuration ) for more information.
2023-05-02 13:06:34 +00:00
2024-10-03 08:55:54 +00:00
## Guides
2022-06-23 21:45:42 +00:00
2024-05-22 16:43:33 +00:00
To get acquainted with Codex, consider:
2024-10-03 08:55:54 +00:00
* running the simple [Codex Two-Client Test ](https://docs.codex.storage/learn/local-two-client-test ) for a start, and;
* if you are feeling more adventurous, try [Running a Local Codex Network with Marketplace Support ](https://docs.codex.storage/learn/local-marketplace ) using a local blockchain as well.
2022-06-23 21:45:42 +00:00
2023-03-29 12:55:17 +00:00
## API
2022-06-23 21:45:42 +00:00
2024-10-03 08:55:54 +00:00
The client exposes a REST API that can be used to interact with the clients. Overview of the API can be found on [api.codex.storage ](https://api.codex.storage ).