# CoverFanz - Admin Dashboard for a Performer Marketplace

Company: Upwork
Service: Website Development
Period: 2022-03 - 2022-04
Tech: React.js, TypeScript, Nest.js, Express.js, MongoDB, GraphQL, Google Maps, JavaScript
Canonical: https://webanion.com/portfolio/coverfanz-platform-administration-and-performance-insights

The admin dashboard that let CoverFanz's founder run a performer marketplace from launch day without asking a developer. Every fan, performer and venue sits in one list with its subscription state, new venues wait in an approval queue until their address is checked, reports land with the reason attached, and the kinds of act are a list the founder controls. It was built in the same month as the apps, on the same GraphQL API.

## The Full Story

The screens that kept a new marketplace trustworthy from launch day, built in the same month as the apps.

### A marketplace is only as good as its members

<p>A platform that lets venues book performers lives on trust. One fake venue or one abusive profile left standing, and performers stop answering requests. From launch day the founder needed to see who had joined, check every new venue and deal with complaints, without waiting for a developer to run a query.</p><p>The admin dashboard was built alongside <a href="/portfolio/coverfanz-fan-engagement-and-artist-booking-platform">the CoverFanz apps</a> so the founder could run the marketplace from the first hour.</p>

### Every account in one list

<p>Every fan, performer and venue sits in one list with its subscription state beside the name, trial or subscribed, so the founder sees at a glance who pays and who is still trying the platform. A profile photo can be removed, or an account banned or deleted, from the same row, and a search finds any profile by name.</p>

### No venue books before it is checked

<p>Every newly registered venue waits in an approval queue with the address it gave. The founder checks the address on the map, then approves or rejects it in one click, and only an approved venue can send a booking. Performers never receive a request from a place that does not exist.</p>

### Reports that get acted on

<p>When a fan or a performer reports a profile, the report lands in the admin with who reported it and why, from abusive language to a picture that is wrong for a children's party. The founder can remove the photo, ban the account or delete it from that row, which is what makes the report button in the app worth pressing.</p>

### Categories the founder controls

<p>The kinds of act a performer can sign up as, music, singer, dancer or other, are a list the founder manages here rather than a value fixed in the app. A category added in the admin is offered at sign up in the app, so the marketplace can take on a new kind of act without waiting for a new release through both app stores.</p>

### Built in the same month, on the same data

<p>The React admin was designed and built inside the same one-month engagement as the backend and both mobile apps, on the same GraphQL API, so every list the founder sees is the live record the apps work from. For the founder it meant a marketplace that could be kept honest from its first day.</p>
