There are a growing number of repositories in our GitHub page, and it can be confusing at first glance. This page maps out how the different repositories fit together.
Client vs Server
It’s important to distinguish between the Client (also called a Device) and the Server. If you want to rent out your computing device, then you’ll need to install the code in the p2pvps-client repository.
If you want to run a P2P VPS server and host a market of clients, then you’ll want to look into the server-deployment2 repository for the back end code. The front end code, which runs in a web browser, lives in p2pvps-dashboard2. This is the same dashboard that can be viewed at p2pvps.net and test.p2pvps.net. It is a Vue.js single page app (SPA) based on the Admin LTE template.
Back End
The back end software runs on a web server and is distinguished from the front end software which runs in browser. A P2P VPS server operates through several different software packages, all running in Docker containers, and orchestrated by Docker Compose, as illustrated in the image above. The main back end code to deploy the software is the server-deployment2 repository. Some of the containers in the suite correspond to repositories like the p2pvps-server2 and listing-manger repositories.
Other Repositories
The links above will take you to the primary repositories for P2P VPS, but there are a handful of other repositories as well:
- docs-p2pvps contains the markdown that is used to generate the specification documentation here.
- openbazaar-node is a JavaScript library used to interact with the OpenBazaar API.
- star4bch is a web app which sends a small amount of BCH to people who star the client repository. You can try it out here.
- localtunnel-test-app is a web app for people try out after they’ve rented a VPS, to show how easy it is to set up a web app on a P2P VPS.
- Finally, older deprecated code lives in this GitHub project.