Skip to content

arnes91/brzi-ai-command-center

Repository files navigation

Brzi AI Command Center

A unified analytics dashboard for music industry professionals, featuring Spotify and YouTube API integration, AI-powered insights, revenue tracking, and comprehensive content management.

Dashboard Preview

Features

Core Dashboard

  • Real-time Analytics - Live Spotify artist data (followers, popularity, top tracks) and YouTube channel stats
  • Revenue Tracking - Comprehensive earnings management with Spotify payout calculator
  • AI Manager - Chat interface with LLM integration for strategic music industry advice
  • Task Management - Priority-based task tracking with status workflow

Data Import & Export

  • DistroKid Integration - Import TSV earnings reports with automatic parsing
  • Spotify for Artists - Import streaming analytics CSV exports
  • YouTube Studio - Import channel analytics and revenue data
  • Earnings Explorer - Sort, filter, categorize, and export your data

Content Management

  • Releases Tracker - Manage your music catalog with ISRC tracking
  • Marketing Campaigns - Plan and track promotional activities
  • Prompts Library - 186+ pre-loaded prompts for AI content creation
  • Trends Analysis - Visualize platform distribution and genre trends

Portfolio & Access Control

  • Public Portfolio - Professional landing page for visitors
  • Owner-Only Dashboard - Secure access control via Gmail authentication

Tech Stack

Layer Technology
Frontend React 19, TypeScript, Tailwind CSS 4, shadcn/ui
Backend Express 4, tRPC 11, Node.js 22
Database MySQL/TiDB with Drizzle ORM
Charts Recharts
Auth Manus OAuth with JWT sessions
APIs Spotify Web API, YouTube Data API v3

Project Structure

brzi-ai-command-center/
├── client/                 # React frontend
│   ├── src/
│   │   ├── components/     # Reusable UI components
│   │   ├── pages/          # Page components
│   │   ├── contexts/       # React contexts
│   │   ├── hooks/          # Custom hooks
│   │   └── lib/            # Utilities (tRPC client)
│   └── public/             # Static assets
├── server/                 # Express + tRPC backend
│   ├── services/           # External API services
│   │   ├── spotify.ts      # Spotify API integration
│   │   ├── youtube.ts      # YouTube API integration
│   │   └── fileParser.ts   # TSV/CSV file parsing
│   ├── routers.ts          # tRPC procedure definitions
│   └── db.ts               # Database queries
├── drizzle/                # Database schema & migrations
├── docs/                   # Documentation
└── scripts/                # Utility scripts

Getting Started

Prerequisites

  • Node.js 22+
  • pnpm 10+
  • MySQL/TiDB database

Installation

# Clone the repository
git clone https://github.com/arnes91/brzi-ai-command-center.git
cd brzi-ai-command-center

# Install dependencies
pnpm install

# Set up environment variables
cp .env.example .env
# Edit .env with your credentials

# Push database schema
pnpm db:push

# Start development server
pnpm dev

Environment Variables

Variable Description
DATABASE_URL MySQL/TiDB connection string
SPOTIFY_CLIENT_ID Spotify API client ID
SPOTIFY_CLIENT_SECRET Spotify API client secret
YOUTUBE_API_KEY YouTube Data API v3 key
JWT_SECRET Session signing secret
OWNER_EMAIL Owner email for access control

API Integrations

Spotify Web API

  • Artist profile data (followers, popularity, genres)
  • Top tracks with album artwork
  • Real-time streaming statistics

YouTube Data API v3

  • Channel statistics (subscribers, views, videos)
  • Multi-channel support (@brziarzi, @brziai)

Data Import Formats

  • DistroKid: TSV with columns for Store, Artist, Title, ISRC, Quantity, Earnings
  • Spotify for Artists: CSV with Streams, Listeners, Saves
  • YouTube Studio: CSV with Views, Watch Time, Revenue

Testing

# Run all tests
pnpm test

# Run tests in watch mode
pnpm test --watch

Test Coverage: 46 tests across 5 test files

  • Access control tests
  • API credential validation
  • Data import parsing
  • Router procedure tests
  • Authentication tests

Development Workflow

  1. Schema Changes: Edit drizzle/schema.ts, then run pnpm db:push
  2. Backend Logic: Add queries in server/db.ts, procedures in server/routers.ts
  3. Frontend: Create pages in client/src/pages/, use trpc.* hooks
  4. Testing: Write tests in server/*.test.ts, run pnpm test

Deployment

The application is designed for deployment on Manus platform with built-in:

  • OAuth authentication
  • Database provisioning
  • S3 file storage
  • Analytics tracking

For external deployment, configure environment variables and ensure database connectivity.

Documentation

Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit changes (git commit -m 'Add amazing feature')
  4. Push to branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License

MIT License - see LICENSE file for details.

Author

Arnes Osmić - AI Entrepreneur & Music Artist


Built with Manus AI Platform

About

Brzi AI Command Center - Unified analytics dashboard for music industry professionals with Spotify/YouTube integration, AI-powered insights, revenue tracking, and content management

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors