Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/komodoplatform/nucleus
Nucleus Node Implementation
https://github.com/komodoplatform/nucleus
Last synced: about 1 month ago
JSON representation
Nucleus Node Implementation
- Host: GitHub
- URL: https://github.com/komodoplatform/nucleus
- Owner: KomodoPlatform
- License: gpl-3.0
- Created: 2023-01-12T12:51:54.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-10-16T15:06:49.000Z (3 months ago)
- Last Synced: 2024-10-18T19:19:18.673Z (3 months ago)
- Language: Go
- Homepage:
- Size: 521 KB
- Stars: 3
- Watchers: 4
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# Nucleus
Nucleus Node Implementation & Protocol
## What is Nucleus?
The Nucleus interoperability layer is a cutting-edge Inter-Blockchain Communication (IBC) solution developed by Komodo. The [AtomicDEX](https://github.com/KomodoPlatform/AtomicDEX-API) integration facilitates seamless cross-protocol atomic swaps and other XCAT (cross-chain atomic transaction) operations between Cosmos (tendermint) assets and non-tendermint assets, such as UTXO blockchains like Bitcoin, Litecoin, DGB, Doge, as well as EVM-compatible ledgers including Ethereum, Polygon, BNB Smart Chain, and numerous others. With Nucleus, DeFi-developers as well as endusers can enjoy a remarkable level of interoperability between diverse blockchain protocols/ecosystems, while benefiting from the security and reliability of Komodo's advanced technology stack.## Getting Started
### Build Dependencies
In order to build nucleus successfuly, you will need `golang(+1.16), gnu make and gcc` to be installed on your system.
### Installation
- Build source code:
```sh
git clone https://github.com/KomodoPlatform/nucleus
cd nucleus
make clean install
```### Configuration
Check `init.py` bootstrapping script and update/add any configuration you want. You can also manually utilize everything under `~/.nucleusd` directory.
### Usage
- First, initialize `~/.nucleus` (make sure nucleusd is installed befoer executing this)
```sh
python3 init.py
# or for linux and macos users
./init.py
```- Simple kickstart
```sh
nucleusd start
```- You can also configure systemd service for nucleusd with the following configuration:
```
[Unit]
Description=Nucleus Deamon
After=network-online.target[Service]
Environment="HOME=${path_to_home}"
ExecStart=${path_to_nucleusd_dir}/nucleusd start
Restart=always
RestartSec=3
LimitNOFILE=4096[Install]
WantedBy=multi-user.target
```