- TypeScript 36.8%
- JavaScript 32.5%
- Pug 21.1%
- Shell 4.4%
- SCSS 4.4%
- Other 0.8%
| app | market update handling | |
| bin | Refactoring: removed API, removed pm2 dependency | |
| .editorconfig |
Fix tab_width to make it equal to indent_size
|
|
| .eslintrc.json | - clean up commit, removed old files, moved scripts to bin/ | |
| .gitignore | Moved from gitlab to codeberg - initial | |
| Dockerfile | Refactoring: removed API, removed pm2 dependency | |
| entrypoint.sh | Refactoring: removed API, removed pm2 dependency | |
| LICENSE | installation procedure update, linux shell scripts | |
| package-lock.json | version bump, orderbook/market update handling | |
| package.json | version bump, orderbook/market update handling | |
| README.md | Refactoring: removed API, removed pm2 dependency | |
diva.exchange
Distributed value exchange upholding security, reliability and privacy.
Diva is an application (free software, AGPLv3). It enables everyone to manage and trade digital values (like crypto currencies). Every installation of diva (like on your laptop) is your personal and private bank and exchange. There is no dependency to any cloud or other central service. Diva includes all necessary services locally. Therefore a complete diva installation consists of several parts:
- an instance of the "Hyperledger/Iroha" Blockchain
- the private and secure communication network "I2P" (aka "darknet")
- the diva application
There are two flavours of diva available: a light version (without blockchain instance) and a full version (everything).
About
This is a research project driven by a small community of researchers which are highly motivated by exploring and understanding the unknown. Respect the AGPLv3 license terms!
How to get in touch
You can get in touch using the features on this platform, via Issues or Pull Requests, or you can use one of those channels:
- Web: https://diva.exchange
- Mastodon (like Twitter, just smarter): https://social.diva.exchange
- Telegram: https://t.me/diva_exchange_chat_de
Please contact us in English or German.
Beware of Dragons
This project is unstable and highly experimental. Feedback and pull requests are always welcome!
Get Started - Local Installation
To get diva up and running, achieve this:
- Fetch the code from the repository
- Start the Docker containers
Please read on to get that done!
Currently diva uses Docker. Docker is just a "Container Framework" helping you to install "something else" on your existing system (like your laptop) without interfering with your existing environment. Docker works on Linux, MacOS and Windows.
Get a short overview of Docker here: https://docs.docker.com/get-started/. Just read the short introduction to get the point (first two paragraphs).
How to Install Docker and Docker Compose
Install Docker and Docker Compose before you install diva.
Windows
Docker: https://docs.docker.com/docker-for-windows/install/
Docker Compose: https://docs.docker.com/compose/install/
MacOS
Docker: https://docs.docker.com/docker-for-mac/install/
Docker Compose: https://docs.docker.com/compose/install/
Linux
Usually just something like: sudo apt-get install docker.io
More details, Ubuntu flavours: https://docs.docker.com/install/linux/docker-ce/ubuntu/
Docker Compose: https://docs.docker.com/compose/install/
How to Install diva
Have you installed Docker? If not, please do so first (see above).
Now get the diva repository via clone or download:
- clone the diva repository:
git clone https://codeberg.org/diva.exchange/diva.git ~/diva.exchange/diva
or
-
download and unpack the code repository to your local device.
We assume that you store the downloaded repository within your User folder, which is usually located here:
- Windows: C:\Users\YourUsername\
- MacOS: /Users/YourUsername/
- Linux/Ubuntu flavour: /home/YourUsername/
We assume as well, that you create a folder called "diva.exchange" within your User folder where you unpack the DIVA repository.
Then, from the project folder and using your terminal:
- Install the project by running:
./bin/install.sh. During the installation process, you will be asked for for the password of the privileged user, sincesudogets used to access docker. - Then start it by running:
./bin/start.sh. During the start-up process, you will be asked for for the password of the privileged user, sincesudogets used to access docker.
Test it, as privileged user: docker ps -a should show a running i2pd container, three iroha containers (that's the so called DIVA testnet) and a iroha-node container, like this:
diva $ sudo docker ps
IMAGE COMMAND CREATED STATUS PORTS NAMES
divax/iroha-node:latest "/entrypoint.sh" 21 seconds ago Up 19 seconds iroha-node
divax/iroha:latest "/entrypoint.sh" 21 seconds ago Up 21 seconds 127.19.3.1:10032->5432/tcp, 127.19.3.1:10011->10001/tcp, 127.19.3.1:10051->50051/tcp iroha3
divax/iroha:latest "/entrypoint.sh" 22 seconds ago Up 21 seconds 127.19.2.1:10032->5432/tcp, 127.19.2.1:10011->10001/tcp, 127.19.2.1:10051->50051/tcp iroha2
divax/iroha:latest "/entrypoint.sh" 23 seconds ago Up 22 seconds 127.19.1.1:10032->5432/tcp, 127.19.1.1:10011->10001/tcp, 127.19.1.1:10051->50051/tcp iroha1
divax/i2p:latest "/home/i2pd/entrypoi..." 24 seconds ago Up 23 seconds 0.0.0.0:4444-4445->4444-4445/tcp, 0.0.0.0:7070->7070/tcp i2pd
DIVA is available locally: running on on http://localhost:3911. Open in up in a browser and create your local account. Remember: using this setup, nothing related to DIVA will ever leave your local box.
Also, test I2PD it with your browser: http://localhost:7070 - you should see the I2Pd webconsole. I2P is up and running.
⚠️ Please note: your using a development branch. There might be dragons.
How to Stop and Remove DIVA
To stop and remove DIVA from your local box:
./bin/stop.sh
How to Build the Docker Images
Windows
tbd.
Linux and MacOS
tbd.
First Glance at I2P
Use the i2pd web-console to explore the i2pd router running within the docker container i2pd. To access the webconsole, open your browser and navigate to http://localhost:7070.
I2P needs some time to get properly integrated in the network. Please be patient for at least 3 minutes.
To access the I2P network just set the HTTP proxy of your favourite browser (Firefox, see: https://support.mozilla.org/en-US/kb/connection-settings-firefox) to localhost:4444. Depending on your browser your mileage may vary.
After changing the HTTP proxy, your chosen browser will be connected to the I2P network and you can navigate to http://diva.i2p or any other I2P site of your choice.
Interesting blog post: "Introduction to I2P", https://www.diva.exchange/en/privacy/introduction-to-i2p-your-own-internet-secure-private-and-free/
Contact the Developers
On DIVA.EXCHANGE you'll find various options to get in touch with the team.
Talk to us via Telegram https://t.me/diva_exchange_chat_de (English or German).
Donations
Your donation goes entirely to the project. Your donation makes the development of DIVA.EXCHANGE faster.
XMR: 42QLvHvkc9bahHadQfEzuJJx4ZHnGhQzBXa8C9H3c472diEvVRzevwpN7VAUpCPePCiDhehH4BAWh8kYicoSxpusMmhfwgx
BTC: 3Ebuzhsbs6DrUQuwvMu722LhD8cNfhG1gs
Awesome, thank you!