Objective

The goal of Swarm City is to create decentralized commerce, however the dream began with our community’s need for decentralized rideshare. Several years ago state actors at all levels began restricting, or even straight-up outlawing rideshare. It persists today. Not only is this a direct affront to the natural right of two consenting adults to interact as they see fit, it puts tremendous hardship on drivers trying to support themselves and their families.

At the same time, where legal, rideshare is controlled by a few mega-companies like Uber, Grab, and Lift who take a 30% fee or more from every transaction. This cannot stand, and will not if we have something to say about it. We will continue our mission to build decentralized rideshare, and beyond, with the help of some new friends :)

The Problem

In order to create truly decentralized, peer-to-peer rideshare, we must have decentralized data persistence and messaging. Swarm City is currently using IPFS and Whisper respectively, but neither is robust or reliable enough to accomplish our goals. To circumvent this, Swarm City created an API bridge, but this adds centralization to the ecosystem, which is unacceptable in the long term. Luckily, we now have a solution. That solution is Swarm.

Swarm is building the data tools needed for decentralized data persistence and messaging.

Under the umbrella of Fair Data Society we are partnering with Swarm in order to realize our long-held dream of decentralized rideshare. In doing so we can together solve not only the data persistence and messaging problems, but also scaling, and anonymity.

Also, in keeping with Fair Data Society best practices, users transacting in Swarm City marketplaces will eventually be able to decide what information about themselves they wish to reveal. It’s exciting stuff!

What is Swarm City?

Swarm City is a decentralized, peer-to-peer commerce application, with built-in reputation. Users find each other in context specific marketplaces to transact goods and services. Not only that, users can create their own marketplaces, and in return for earning a small per-transaction fee, they provide conflict resolution, and in general make their marketplace a great place to transact.

The MVP app was released in June of 2017, and since then Swarm City has been working on creating the most user friendly commerce app possible, while remaining truly decentralized and truly peer-to-peer.

Swarm City has continued to build and release despite losing the vast majority of their development funds in the 2017 Parity multisig hack.

Although Swarm City allows for any type of commerce marketplace, creating decentralized rideshare is a priority.

What is Fair Data Society

Fair Data Society is a non-profit organization initiated by Datafund, whose purpose is to define “Fair Data Principles” and to develop technology that treats personal data with respect, keeping those fair data principles in mind.

Development Progress

Swarm City has completed almost all front end development for the “Boardwalk” version of our app. Here is the progress website:

https://progress.swarm.city/

Boardwalk lays the foundation for decentralized commerce. Users are able to create their identity, send, receive, and store Swarm Tokens (SWT), create and reply to requests in order to engage in deals in context specific marketplaces, and resolve conflicts. Users are also able to communicate and earn reputation. The Boardwalk interface is Craigslist-like, and easy to use.

Since the beginning of 2019, Swarm City has been creating a React version of Boardwalk (from Polymer) to make it easier for interested developers to add assistance.

Our Goals

We will plug Swarm and the Ethereum blockchain into the new React front end to bring about decentralized messaging and data persistence, and use the newly constructed app as our rideshare proof-of-concept.

To do that, we need to accomplish:

Integrate FDS.js into Swarm City Boardwalk to use for:

Install web3 functionality from Polymer version of the app to React by defining contract interface with FDS.js to manage web3 interaction

Install Swarm to replace IPFS functionality, using FDS.js

Add ridesharing functionality (map) using Open Street Maps including: add meta-info (pickup and dropoff location), select location using Mapbox, Create log-less Mapbox server, run Open Street Maps over Swarm

Add e2e encrypted reporting of driver location to user and mapping using Swarm Feeds and Open Street Maps.

We are pioneering this approach for our own needs of course, but we believe the greater ethereum community will benefit as well. We see a scalable rideshare app as the perfect example for P2P, decentralized commerce on Ethereum. By solving rideshare, we solve all commerce.

To achieve these goals, a fundraising effort is underway at Giveth.One. Here’s the link to the campaign. Please participate if you believe decentralized rideshare is an important objective.

Fair Data Society will use any funds raised to help us integrate Swarm into a rideshare proof of concept. What follows is a breakdown of each campaign milestone.

Milestone 1: Integrate FDS.js into Swarm City Boardwalk

To be used for:

Create wallet Create username (ENS) Account messaging Account/wallet management (import and export)

Included in the Milestone:

Approx 120 dev hours

Comms and Community

Total cost to implement: $21,600

Milestone 2: Install web3 functionality from Polymer to React

The install includes:

Defining contract interface with FDS.js to manage web3 interaction (or) Use current web3.js bits (tbd)

Included in this Milestone:

Approx 120 dev hours

Comms and Community

Total cost to implement: $21,600

Milestone 3: Install Swarm to replace IPFS functionality

This install includes:

Use FDS.js to install Swarm into Boardwalk React app for data persistence.

Included in this Milestone:

Approx 64 dev hours

Comms and Community

Total cost to implement: $12,000

Milestone 4: Add ridesharing functionality

A rideshare app needs a map! Integrate Open Street Maps. Sub-goals:

Add meta-info (pickup and dropoff location) Select location using Mapbox Create logless Mapbox server Run Open Street Maps over Swarm

Included in this Milestone:

Approx 160 dev hours

Comms and Community

Total cost to implement: $28,800

Milestone 5: E2E encrypted reporting

Add e2e encrypted reporting of:

Driver location to user Mapping using Swarm Feeds and Open Street Maps.

Included in this Milestone:

Approx 64 dev hours

Comms and Community

Total cost to implement: $12,000

Connect with us

The Dev Team is always on the lookout for other developers who want to get involved. If you have React or Solidity experience, feel free to reach out to #devhive in Riot. You can get a peek at the project by reviewing Github, here. To hang out where our community is, join us in Swarm City Slack, Swarm City Riot, or follow us on Twitter.