A modern web platform that provides real-time analytics for influencers and brands to help monitor performance, engagement, and audience insights.
Dashboard Influencer Figma
Dashboard Brand Figma
This project includes two custom dashboards:
- π§βπΌ Influencer Dashboard β Tracks views, likes, shares, engagement rate, audience breakdown, and earnings.
- π’ Brand Dashboard β Shows impressions, video performance, engagement, profile clicks, and audience data.
To provide marketing teams and influencers with reliable real-time insights into campaign performance and audience metrics.
This application supports brands and influencers in tracking content performance across multiple dimensions.
- Build two custom dashboards
- Provide backend API integration
- Use PostgreSQL and Prisma for structured data handling
- π Real-time performance metrics (views, likes, comments, shares, etc.)
- π° Earnings overview (DKK)
- π Demographic breakdown (age, gender, country)
- π Engagement rate calculations
- π Top campaign display
- π Performance graph (time-series data)
- π§ Backend data modeling using PostgreSQL + Prisma
- π» API-based dashboard rendering
π Live Preview:
π Influencer Dashboard Design
π Brand Dashboard Design
πΌοΈ Screenshots:
| Technology | Purpose |
|---|---|
| Next.js | Frontend framework (React-based) |
| Node.js + Express | Backend / API development |
| PostgreSQL | Relational database |
| Prisma | ORM for database modeling |
| TypeScript | Type-safe backend & frontend logic |
| Figma | UI/UX design and dashboard prototyping |
- Clone the repository:
git clone https://github.com/your-org/hyf-adwiseli.git
cd hyf-adwiseli- Install dependencies for each part:
# Backend
cd api
npm install
# Brand frontend
cd ../brand
npm install
# Influencer frontend
cd ../influencer
npm install- Configure environment variables (
.envinapidirectory):
DATABASE_URL=postgresql://<user>:<password>@localhost:5432/adwiseli
- Run PostgreSQL locally or connect to an external instance.
- After
.envsetup, apply migrations:
cd api
npx prisma migrate dev --name init- (Optional) Seed database with mock data:
npm run seedcd api
npm run dev# Brand dashboard
cd brand
npm run dev
# Influencer dashboard
cd influencer
npm run devFrontend runs on http://localhost:3000
API runs on http://localhost:8080 (or as configured)
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/brand/:brandId/dashboard |
Fetch brand analytics data |
| GET | /api/influencer/dashboard |
Fetch influencer analytics data |
All responses are returned as JSON for frontend integration.
[ Influencer UI ] [ Brand UI ]
β β
React + Next.js Frontend
β
API (Node.js + Express)
β
Prisma ORM β PostgreSQL DB
hyf-adwiseli/
βββ api/
β βββ src/
β βββ routes/
β βββ brand/
β β βββ [brandId]/
β β β βββ dashboard/
β β β βββ index.ts
β β βββ index.ts
β βββ influencer/
β βββ dashboard/
β βββ index.ts
βββ brand/
β βββ src/
β βββ components/
β β βββ organisms/
β β βββ Dashboard/
β β βββ DashboardCard.tsx
β β βββ DashboardContainer.tsx
β βββ hooks/
β β βββ useDashboardData.ts
β βββ queries/
β βββ brand/
β βββ fetchBrandData.ts
βββ influencer/
βββ src/
βββ components/
β βββ organisms/
β βββ Dashboard/
β βββ DashboardCard.tsx
β βββ DashboardContainer.tsx
βββ hooks/
β βββ useDashboardData.ts
βββ queries/
βββ influencer/
βββ fetchInfluencerData.ts
- π©βπ« Scrum Master β Facilitated regular team stand-ups (2β3 times per week), sprint planning, retrospectives, and maintained team workflow and communication.
- π©βπ» Backend Developer
- Designed and implemented SQL database schema:
BrandProfileClick,Earnings,CampaignVideo,PerformanceMetric - Created PostgreSQL mock data scripts using
INSERTstatements and time-based values (NOW() - INTERVAL) - Built API route to fetch brand and campaign performance data
- Implemented logic to calculate average
performanceMetricsScoreand deriveengagementRate - Ensured backend data flow consistency with frontend dashboard components
- Designed and implemented SQL database schema:
- π©βπ« Design Leader - Ensured consistent implementation of the Figma design system across both applications and conducted design reviews to maintain visual accuracy, UI alignment, and quality standards.
- π©βπ» Frontend Developer
- Developed useDashboardData hooks for both brand and influencer apps, converting API responses into structured, dynamic card data for dashboards.
- Implemented logic to extract audience insights, campaign stats, and engagement metrics.
- Ensured data was returned in a consistent format to support reusable dashboard components across both apps.
- Designed and established the front-end folder structure to support clean integration into the existing project architecture.
- π©βπ« Communication Manager - Acted as primary contact point between team and client, coordinating feedback, requirements, and timeline alignment
- π©βπ» Frontend Developer
- Developed backend API route to fetch influencer performance data (views, likes, comments, shares, followers, engagement rate)
- Structured JSON response to support frontend dashboard visualization
- Ensured accurate data transformation and validation for consistent UI presentation
- π¨βπ« Deployment Specialist - Ensured stable deployment processes across the project by managing build integrity and deployment environments. Assisted in resolving integration-related issues and supported the team in maintaining a smooth development-to-deployment workflow without interruptions.
- π¨βπ» Frontend Developer
- Developed the DashboardCard component β a responsive statistics card displaying key metrics in a unified format. Focused on its design by fine-tuning paddings, text alignment, and visual hierarchy to match the Figma design system.
- Updated the routing logic to correctly render the Dashboard page with dynamic data loading and ensured seamless integration into the existing navigation structure.
- Also implemented a custom button component for dashboard actions or navigation, following the project's UI/UX standards.
- Worked closely with useDashboardData and DashboardContainer components to ensure consistent data flow and clean integration of logic and visual components across the frontend.
- π©βπ« Dependency Manager - Managed project dependencies and ensured consistent imports and integrations across the app.
- π©βπ» Frontend Developer
- Developed the
DashboardContainercomponent - Imported shared logic and UI components such as:
useUsercustom hook,useDashboardDatacustom hook,Loadingcomponent for loading states,DashboardCardfor rendering individual statistics cards - Implemented conditional UI logic for loading and error states
- Structured layout with responsive design (using Tailwind CSS grid and flex utilities)
- Integrated fetched dashboard data into dynamic grid of cards**
- Developed the
- π©βπ« Git Specialist - Ensured seamless version control across teams by designing and maintaining Git workflows, including code reviews, and merge pipelines. Collaborated closely with developers to manage release cycles and resolve conflicts effectively.
- π©βπ» Technical Contribution
- Integrated user and dashboard data hooks
- Managed loading and error states with custom UI components
- Built a responsive dashboard layout displaying statistics with fallback handling for network issues and loading states.
- Maintained clean Git history through feature branches and pull requests, ensuring well-documented commits and smooth deployment integration.
- π¨βπ« Testing Lead (QA) - Checked different parts of the project to find bugs or UI issues, helped organize basic testing before final delivery
- π¨βπ» Frontend Developer
- Built a dashboard page for both influencers and brands
- Used a reusable layout component that had already been created earlier in the project
- Added UI elements like Card, Container, and a Dashboard Button
- Worked with other team members to keep the design and user experience consistent
- π¨βπ« Deployment Specialist
- π¨βπ» Frontend Developer
- Implemented the
fetchBrandDatafunction to retrieve and prepare all necessary data for the brand performance dashboard. - Structured the data using TypeScript interfaces (
BrandDashboardDataandBrandCampaign) to ensure clarity and type safety. - The function returns:
- Brand details (ID, name, followers, ROI)
- A list of campaigns with creator count, engagement rate, and audience insights
- Audience demographics by gender and country
- Key engagement metrics (views, likes, comments, shares)
- Default values are applied to prevent any crashes due to missing backend data, ensuring a stable and reliable frontend experience.
- Implemented the

