1
0
forked from apxtri/apxtri

More understanable readme

This commit is contained in:
phondropoulos 2024-07-05 14:02:09 +03:00
parent 27ce76e53f
commit 4c3d5f5433

View File

@ -1,7 +1,7 @@
## apxtri  Decentralized Autonomous Organisation (DAO) ## apxtri  Decentralized Autonomous Organisation (DAO)
You are here on the tech side, to understand under the wood how it works and how you can contribute to this tech journey. Welcome to the technical side of apxtri, where you'll learn how it works and how you can contribute. Visit [apxtri web site](https://apxtri.crabdance.com) to discover how to create a new social world with apxtri.
See [apxtri web site](https://apxtri.crabdance.com) how to create a new social world with apxtri.
## apxtri Architecture: a quick view & keywords definition ## apxtri Architecture: a quick view & keywords definition
@ -15,7 +15,7 @@ See [apxtri web site](https://apxtri.crabdance.com) how to create a new social w
* **the XBE coin** is the token that drive the blockchain, it materialises an exchange value and is a conterpoint * **the XBE coin** is the token that drive the blockchain, it materialises an exchange value and is a conterpoint
* **a git apxtri** is a package ready to install a town by a mayor into a physical server that will be able to join a nation (mean accept thoses nation rules). You can also create a nation and stay alone or not. Then mayor will be able to host druid request to create tribe. Then druid will invite pagan to join his tribe... * **a git apxtri** is a package ready to install a town by a mayor into a physical server that will be able to join a nation (mean accept thoses nation rules). You can also create a nation and stay alone or not. Then mayor will be able to host druid request to create tribe. Then druid will invite pagan to join his tribe...
All actors will have the same target to respect contracts and are free to leave or to stay into a nation, a town or a tribe. If a contract is not fair, then a nation, tribe, will be empty mean not creating value mean die. Only fair rules will survive but any try will rewards actor with XTRIB coin. All actors will have the same target to respect contracts and are free to leave or to stay into a nation, a town or a tribe. Unfair contracts lead to empty towns, tribes, or nations, resulting in no value creation. Only fair rules will survive, rewarding actors with XTRIB coins.
```plaintext ```plaintext
/town-nation/ tribe sapce /town-nation/ tribe sapce
@ -69,7 +69,7 @@ Pre-request: linux maxhine on a vps or physical machine ( we choose ubuntu serve
To start you need to  To start you need to 
* setup your network and for production a Domain Name server and a SSL certificat to your IP town * setup your network and for production a Domain Name Server (DNS) and a SSL certificat to your town's IP
* setup your machine by installing snap, nginx, nvm, npm, node * setup your machine by installing snap, nginx, nvm, npm, node
As a mayor, you have to understand what you are doing, your numeric reputation is in the game. Always check sources before downloading any things. For dev use town name: **dev** and nation name :**ants**  As a mayor, you have to understand what you are doing, your numeric reputation is in the game. Always check sources before downloading any things. For dev use town name: **dev** and nation name :**ants** 
@ -85,9 +85,9 @@ $ sudo useradd -s /bin/bash -m -d /home/{apxuser} -c "{apxuser}" {apxuser}
$ sudo passwd {apxuser} $ sudo passwd {apxuser}
$ sudo usermod -aG sudo {apxuser} $ sudo usermod -aG sudo {apxuser}
$ sudo visudo $ sudo visudo
# add the next line in the file # Add the following line to the file:
$ {apxuser} ALL=(ALL) NOPASSWD: ALL $ {apxuser} ALL=(ALL) NOPASSWD: ALL
# exit and save # Exit and save, then switch to the new user:
$ su {apxuser} $ su {apxuser}
``` ```
@ -99,14 +99,12 @@ FOR DEV:  you can just use local http:/dev-ants
```plaintext ```plaintext
$ sudo vim /etc/hosts # add 127.0.0.1 dev-ants $ sudo vim /etc/hosts # add 127.0.0.1 dev-ants
# Then after "Machine" install, open in your browser http://dev-ants # Open http://dev-ants in your browser after installation.
``` ```
if you use chrome change settings for CORS for dev chrome://flags/#block-insecure-private-network-requests  change to disabled  
FOR PRODUCTION:  FOR PRODUCTION: 
You need a domain name, to get a free one [http://ydns.io](http://ydns.io) create one like apxtri.ydns.io that content your IP adress the get your url update something like [https://ydns.io/hosts/update/Tl7FDQAETmQre312edztgsI](https://ydns.io/hosts/update/Tl7FDQAETmQre312edztgsI)[Uy](https://ydns.io/hosts/update/Tl7FDQAETmQre312edztgsIUy) You need a domain name. To get a free one, visit [http://ydns.io] and create one like apxtri.ydns.io that contains your IP address. Then, update your URL with something like [https://ydns.io/hosts/update/Tl7FDQAETmQre312edztgsI](https://ydns.io/hosts/update/Tl7FDQAETmQre312edztgsI)[Uy](https://ydns.io/hosts/update/Tl7FDQAETmQre312edztgsIUy)
```plaintext ```plaintext
# Into your production machine # Into your production machine
@ -124,31 +122,35 @@ This allow public access from internet to your DMZ local server.  Think to use
```plaintext ```plaintext
$ sudo apt install git vim libcap2-bin p7zip-full p7zip-rar curl nginx $ sudo apt install git vim libcap2-bin p7zip-full p7zip-rar curl nginx
# Install last nvm** (check website to get latest v0.xx from https://github.com/nvm-sh/nvm) # Install the latest version of nvm (check the website for the latest version: https://github.com/nvm-sh/nvm)
$ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash $ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash
# close and re-open terminal under apxuser # Close and re-open the terminal under the apxuser
$ nvm --version $ nvm --version
# if nvm not found then cc paste 3 last line : export NVM_DIR= .... # If nvm is not found, copy and paste the last 3 lines of the installation script: export NVM_DIR=....
# and recheck nvm --version # Then recheck the nvm version
# Install node/npm/yarn in general follow the directiv they gave online to update properly the config $ nvm --version
# Install Node.js, npm, and yarn. Follow the online instructions to update the configuration properly.
$ nvm install node $ nvm install node
$ node --version #to check $ node --version # to check the Node.js version
$ npm install --global yarn $ npm install --global yarn
$ yarn --version $ yarn --version # to check the yarn version
# Find a non existing town to join to an existing nation see https://apxtri.crabedance.com # Find a non-existing town to join an existing nation. See https://apxtri.crabedance.com
$ mkdir ~/apxtowns # if it does not exist $ mkdir ~/apxtowns # if it does not exist
$ mkdir ~/apxtowns/{town}-{nation} $ mkdir ~/apxtowns/{town}-{nation}
$ sudo chown {apxuser}:root /etc/nginx/nginx.conf $ sudo chown {apxuser}:root /etc/nginx/nginx.conf
################################# #################################
# For dev ####################### # For Dev ###############
################################# #################################
$ mkdir ~/apxtowns/{town}-{nation}/adminapi/ $ mkdir ~/apxtowns/{town}-{nation}/adminapi/
$ cd ~/apxtowns/{town}-{nation}/adminapi/ $ cd ~/apxtowns/{town}-{nation}/adminapi/
$ git clone https://gitea.ndda.fr/apxtri/apxtri.git $ git clone https://gitea.ndda.fr/apxtri/apxtri.git
$ yarn install $ yarn install
# to setup run the 1st time
# Set up and run for the first time
$ dns=apxtri.ydns.io user=apxuser yarn dev $ dns=apxtri.ydns.io user=apxuser yarn dev
################################# #################################
# For production ############### # For production ###############
################################# #################################