{"repo":"district0x/ethlance","free":true,"listed":false,"github":"https://github.com/district0x/ethlance","clone":"git clone https://github.com/district0x/ethlance.git","description":"Ethlance is the first job market platform built entirely on the Ethereum blockchain. Free to use forever!","language":"Clojure","stars":716,"topics":["ethereum","blockchain","clojurescript","freelance","solidity","district"],"license":"GPL-3.0","category":"blockchain-web3","readme_excerpt":"Ethlance V.2 (Newlance) Ethlance Version 2 is Currently in Development and is subject to change before final release Development Prerequisites 1. Node.js = 20.18.1 (it's defined in .tool-versions and asdf is a good way to install it) 2. Java JDK = 18 (for Clojure) 3. Babashka 4. PostgreSQL (tested with 17.3) 5. IPFS daemon 6. Ethereum testnet (e.g. ganache) Running the system Clojure gets its missing dependencies automatically during compilation. Node.js dependencies need to be installed manually. There are 3 places for it: 1. Testnet & smart contract node deps at the project root: - yarn install 2. UI node dependencies - cd ui && yarn install 3. Server node dependencies - cd server && yarn install Also a database needs to exist (configured in config/server-config-dev.edn under :district/db key). Here's some SQL to do it (via the psql command) The database schema gets created automatically when server is started. After this you can start all necessary services at once from the terminal with overmind start - the processes to be started are defined in Procfile - Overmind - TIP for development it's better to run the bb run-server separately because although shadow-cljs recompiles the code on file saves, the node process doesn't reload it and for that manual restart is required to reload the updated code. Or you can start them one by one (check the Procfile for respective commands): 1. Start IPFS - this is optional if the :ipfs config points to external node 2. Start ganache bb t","default_branch":null,"files":null,"tree":[],"storefront":"/r/district0x","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/district0x/ethlance/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}