Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/Priyanshu471/ad-management/llms.txt

Use this file to discover all available pages before exploring further.

The Profile page is your public-facing identity within the Ad Management System. From here you can update your cover image and profile photo, review your audience statistics, edit your bio, and manage the social media links that appear on your profile. All visual changes are applied instantly in the browser via a Zustand image store, giving you immediate feedback as you personalise your page. Route: /creator/profile

Profile Sections

Cover Image

A full-width banner displayed at the top of your profile. Click the camera icon in the bottom-right corner of the cover area to upload a replacement image from your device.

Profile Photo

A circular avatar overlaid on the cover image. Click the camera icon on the avatar to upload a new profile photo. Supported formats follow standard browser <input type="file" accept="image/*"> constraints.

Audience Stats

A three-column stat bar displayed directly below the profile photo showing your current Posts, Followers, and Following counts.

About Me

A bio/description text section where you can introduce yourself and describe the type of content you create.

Social Links

Icon links to your external social profiles: Facebook, Twitter, LinkedIn, Instagram, and Dribbble.

Name & Role

Your display name and role label are shown beneath the profile photo. These values are sourced from the useUser() store and are editable via the Profile Modal in the header dropdown.

Audience Stats

The stat bar shows three fixed metrics pulled from your creator account:
StatSample Value
Posts259
Followers129K
Following2K

Image Management

Profile and cover images are managed client-side using the useImage() Zustand store defined in hooks/useImage.tsx:
hooks/useImage.tsx
export const useImage = create<ImageState>((set) => ({
  userImgUrl: "/user-icon.png",
  coverImgUrl: "/banner-image.png",
  setUserImgUrl: (userImgUrl) => set({ userImgUrl }),
  setCoverImgUrl: (coverImgUrl) => set({ coverImgUrl }),
}));
When a file is selected, the component calls URL.createObjectURL(file) and immediately passes the resulting object URL to setUserImgUrl or setCoverImgUrl, updating the store and re-rendering the image in place with no network round-trip.

How to Change Your Profile Photo or Cover Image

1

Navigate to your profile

Open the sidebar and click Profile, or go directly to /creator/profile.
2

Click the camera icon

For the profile photo, click the camera icon overlaid on your circular avatar. For the cover image, click the camera icon in the bottom-right corner of the banner.
3

Select a file from your device

A native file picker opens. Choose any image file (image/*) from your device and confirm the selection.
4

Image updates immediately

The selected image is converted to an object URL via URL.createObjectURL(file) and rendered instantly. No page reload is required.
Image changes are stored in the Zustand store (in-memory) and will reset on page reload. To make uploads persistent, integrate EdgeStore — already listed as a project dependency — to store the object URLs server-side and rehydrate them on load.

Updating Your Name

Your display name and role are sourced from the useUser() store. To edit your name, open the Profile Modal by clicking the top-right avatar menu and selecting My Profile. The modal lets you update your name and email. The role field is displayed but is read-only. Changes are saved by clicking Save and are reflected across the creator portal immediately.

Build docs developers (and LLMs) love