/ads-ui

Self-service ads UI

Primary LanguageTypeScriptMozilla Public License 2.0MPL-2.0


Brave Ads Manager is a key component of the ads infrastructure. From the ads manager, advertisers are able to define unique ad campaigns and creatives. Additionally, advertisers can review delivery and engagement metrics on their ad campaigns.

Tech Stack & Philosophy

ads-manager is built with TypeScript and React.js.

Our API requests are constructed as GraphQL queries and are then handled by the Apollo Client.

ads-manager routing is instrumented by the React Router, and testing is done using the Jest framework.

Our application bundle is created with webpack and stored on AWS S3.

This bundle is then served to users as a static asset by AWS CloudFront CDN.

Local Development

  • Create a .env.local file, or update .env file provided
  • Set BACKEND_URL=<> to the endpoint you wish to pull data from.

Note: We are using HTTPS in developer mode so that cookie based authentication works properly. You may need to proceed through a certificate warning in order to develop locally.

Generating GraphQL Types:

> npm run codegen