đī¸ CreatorContent.net
U
User
!
-
!
-
Manage Subscription
Manage Tokens
Storage
Media Library â
Documentation
User Dashboard
Podcasts
Podcasts
Episodes
Transcriptions
Contributors
Studio
Public Profile
Public Profiles
Blog
Event Lists
Surveys
Contact Forms
Subscribers
Notifications & Shoutouts
Development
React Test
Media Library
Help Center
Admin Dashboard
Logout
Back to Documentation
Public Profile PAge Info
Public Profile PAge Info
File: Public Profile PAge Info.md
Documentation Index
Loading documentation...
Creator Public Profile Page Specification This document details the requirements for the Creator Public Profile Page in the Creator Platform, a Laravel-based web application. It includes the features, database structure, and related pages needed to support the public profile page for musicians, comedians, and other creators. 1. Overview The Creator Public Profile Page serves as a customizable, standalone website for creators, accessible via username.creatorplatform.com, creatorplatform.com/username, or a custom domain (e.g., creatorname.com). It showcases the creator's brand, events, and content while enabling fan engagement through notifications and contact forms. 2. Features The public profile page includes the following features: Profile Section: - Display creator's bio (rich text with Markdown or WYSIWYG support). - Profile picture (square, max 2MB, supported formats: JPEG, PNG). - Cover image (wide banner, max 5MB, supported formats: JPEG, PNG). - Social media links (e.g., Instagram, YouTube, Spotify, Twitter/X) with icons. - Customizable theme (colors, fonts, layout options) configurable via creator dashboard. Event List/Calendar: - Display upcoming events in a list or calendar view (toggleable). - Event details: name, date, time, location (with Google Maps/OpenStreetMap integration), ticket/RSVP links, and optional media (images/videos). - Sorting options: chronological or featured events. - Link to individual Event Detail Pages for more information. Notification Opt-In Form: - Form for fans to subscribe to event notifications (email, SMS, or push if a mobile app is implemented). - Fields: email address, phone number (optional for SMS), and notification preferences. - CAPTCHA (e.g., Google reCAPTCHA) for spam prevention. - Consent checkbox for GDPR/CCPA compliance. - Success message and redirect after submission. Contact Form: - Embedded form for fans, venues, or collaborators to contact the creator. - Fields: name, email, subject, message. - CAPTCHA for spam prevention. - Optional auto-response email configurable by the creator. - Submissions sent to creator's email and stored in creator dashboard. Media Gallery: - Showcase photos, videos, or audio clips (e.g., music tracks, comedy sketches). - Supported formats: JPEG/PNG for images, MP4 for videos, MP3 for audio. - Grid or carousel layout with lazy loading for performance. - Lightbox effect for viewing full-size media. Blog/Updates Section: - Display creator's news or updates (e.g., tour announcements, new releases). - Posts include title, date, content (rich text), and optional media. - Pagination for older posts. Merchandise Links: - Display links to external stores (e.g., Bandcamp, Shopify) or embedded merchandise items. - Optional "Buy Now" buttons with affiliate tracking support. Custom Pages: - Support for additional pages (e.g., "About," "Tour History") created by the creator. - Pages use rich text and can include media. Social Sharing: - Buttons to share the profile page or specific events on social media (e.g., Twitter/X, Facebook, WhatsApp). - Open Graph and Twitter Card meta tags for rich social media previews. Custom Domain Support: - Accessible via username.creatorplatform.com, creatorplatform.com/username, or custom domain. - Automatic SSL certificates (e.g., Let's Encrypt) for secure access. - DNS configuration instructions provided in creator dashboard. SEO Optimization: - Meta tags (title, description, keywords) customizable by the creator. - Sitemap integration for search engine crawling. - Canonical URLs to prevent duplicate content issues. Responsive Design: - Mobile-friendly layout using Tailwind CSS. - Accessible design (WCAG 2.1 compliance) with screen reader support and keyboard navigation. Analytics Tracking: - Integration with Google Analytics or similar for tracking page views and visitor behavior. - Data accessible to creators via the dashboard. 3. Database Structure The following database tables are required to support the Creator Public Profile Page. The platform uses MySQL/PostgreSQL with Laravel's Eloquent ORM. Table: users (Enhanced) Stores creator account information. - id: BIGINT, Primary Key, Auto-increment - username: VARCHAR(50), Unique, Index (for subdomain/profile URL) - email: VARCHAR(255), Unique - password: VARCHAR(255), Hashed./art - profile_picture: VARCHAR(255), Nullable (path to image file) - cover_image: VARCHAR(255), Nullable (path to image file) - bio: TEXT, Nullable (rich text for creator bio) - social_links: JSON, Nullable (array of social media URLs) - theme_settings: JSON, Nullable (colors, fonts, layout preferences) - custom_domain: VARCHAR(255), Nullable, Unique (custom domain URL) - profile_completed: BOOLEAN, Default: FALSE (wizard completion status) - profile_published: BOOLEAN, Default: FALSE (profile visibility) - profile_theme: VARCHAR(50), Default: 'default' (selected theme) - created_at: TIMESTAMP - updated_at: TIMESTAMP Table: events Stores event details for each creator. - id: BIGINT, Primary Key, Auto-increment - user_id: BIGINT, Foreign Key (users.id), Index - title: VARCHAR(255) - date: DATETIME - location: VARCHAR(255) - latitude: DECIMAL(10,8), Nullable (for map integration) - longitude: DECIMAL(11,8), Nullable - ticket_url: VARCHAR(255), Nullable - description: TEXT, Nullable - media: JSON, Nullable (array of image/video paths) - is_recurring: BOOLEAN, Default: false - recurrence_rule: VARCHAR(255), Nullable (e.g., iCal RRULE for recurring events) - created_at: TIMESTAMP - updated_at: TIMESTAMP Table: notification_subscriptions Stores fan subscriptions for event notifications. - id: BIGINT, Primary Key, Auto-increment - user_id: BIGINT, Foreign Key (users.id), Index - email: VARCHAR(255), Nullable - phone: VARCHAR(20), Nullable (for SMS notifications) - notification_types: JSON (array of preferred notification methods: ['email', 'sms', 'push']) - consent_given: BOOLEAN, Default: true (for GDPR/CCPA compliance) - created_at: TIMESTAMP - updated_at: TIMESTAMP Table: contact_submissions Stores contact form submissions. - id: BIGINT, Primary Key, Auto-increment - user_id: BIGINT, Foreign Key (users.id), Index - name: VARCHAR(255) - email: VARCHAR(255) - subject: VARCHAR(255) - message: TEXT - created_at: TIMESTAMP - updated_at: TIMESTAMP Table: media Stores media files for profiles, events, or posts. - id: BIGINT, Primary Key, Auto-increment - user_id: BIGINT, Foreign Key (users.id), Index - type: ENUM('image', 'video', 'audio') - path: VARCHAR(255) (file path in storage, e.g., S3 or local) - title: VARCHAR(255), Nullable - description: TEXT, Nullable - created_at: TIMESTAMP - updated_at: TIMESTAMP Table: posts Stores blog posts or updates for the creator's profile. - id: BIGINT, Primary Key, Auto-increment - user_id: BIGINT, Foreign Key (users.id), Index - title: VARCHAR(255) - content: TEXT (rich text) - media_ids: JSON, Nullable (array of media.id for associated media) - created_at: TIMESTAMP - updated_at: TIMESTAMP Table: custom_pages Stores additional custom pages for the creator's profile. - id: BIGINT, Primary Key, Auto-increment - user_id: BIGINT, Foreign Key (users.id), Index - title: VARCHAR(255) - slug: VARCHAR(255), Unique (for URL routing) - content: TEXT (rich text) - media_ids: JSON, Nullable (array of media.id) - created_at: TIMESTAMP - updated_at: TIMESTAMP Table: analytics (Enhanced) Stores profile page analytics data. - id: BIGINT, Primary Key, Auto-increment - user_id: BIGINT, Foreign Key (users.id), Index - page_views: INTEGER, Default: 0 - unique_visitors: INTEGER, Default: 0 - event_views: INTEGER, Default: 0 - contact_submissions: INTEGER, Default: 0 - notification_signups: INTEGER, Default: 0 - referral_source: VARCHAR(255), Nullable - created_at: TIMESTAMP - updated_at: TIMESTAMP Table: profile_wizard_progress Stores wizard completion progress for creators. - id: BIGINT, Primary Key, Auto-increment - user_id: BIGINT, Foreign Key (users.id), Unique - current_step: INTEGER, Default: 1 - steps_completed: JSON (array of completed step numbers) - data: JSON (temporary storage of wizard data) - created_at: TIMESTAMP - updated_at: TIMESTAMP 4. Implementation Phases Phase 1 (MVP - 2-3 weeks): 1. Basic profile page with bio, images, social links 2. Simple event listing 3. Contact form 4. Basic theme system (3-4 pre-built themes) 5. Profile wizard for new creators 6. Basic analytics Phase 2 (4-6 weeks): 1. Media gallery with upload functionality 2. Blog posts system 3. Advanced analytics dashboard 4. Custom domains (basic implementation) 5. Enhanced themes and customization Phase 3 (6-8 weeks): 1. Advanced fan engagement features 2. Revenue tracking and merchandise integration 3. Mobile app integration 4. Advanced SEO and performance optimization 5. Premium features and monetization 5. Profile Wizard Implementation The wizard is mandatory for new creators and includes: Step 1: Basic Profile (Required) - Profile picture upload with cropping - Cover image upload with cropping - Bio with rich text editor - Social media links (Instagram, YouTube, Spotify, Twitter/X) Step 2: Theme Selection (Required) - Pre-built themes: Modern, Classic, Minimal, Dark, Colorful - Color customization (primary, secondary, accent colors) - Font selection (3-4 Google Fonts options) - Layout options (sidebar, full-width, centered) Step 3: Content Setup (Optional) - Add first event (with date picker, location, description) - Upload media samples (images, videos, audio) - Create first blog post (with rich text editor) Step 4: Domain Setup (Optional) - Choose subdomain (username.creatorplatform.com) - Custom domain option (premium feature) - Preview of final profile Wizard Features: - Progress indicator (1/4, 2/4, etc.) - Save progress - Users can come back later - Preview mode - See how profile will look - Skip options - Make some steps optional - Validation - Ensure required fields are completed - Mobile-responsive design 6. Pages Needed The following pages are directly related to or support the functionality of the Creator Public Profile Page: 6.1 Creator Public Profile Page - URL: username.creatorplatform.com, creatorplatform.com/username, or custom domain. - Description: The main public-facing page for each creator, displaying all features listed above. - Access: Public (no authentication required). - Technical Notes: - Built with Laravel Blade templates and Tailwind CSS. - Dynamic routing to handle subdomain and custom domain requests. - Caching (e.g., Redis) for performance. - CDN for static assets (images, CSS, JS). 6.2 Profile Wizard Pages - URL: creatorplatform.com/profile/wizard - Description: Multi-step wizard for setting up creator profiles. - Access: Authenticated creators only. - Steps: Basic Profile, Theme Selection, Content Setup, Domain Setup 6.3 Event Detail Page - URL: creatorplatform.com/username/events/{event_id} or equivalent subdomain/custom domain. - Description: Displays detailed event information with notification opt-in and social sharing. - Access: Public. - Technical Notes: - Fetches event data from events table. - Integrates with map APIs for location display. - Supports SEO with meta tags. 6.4 Fan Notification Preferences Page - URL: creatorplatform.com/notifications/{token} or via fan login. - Description: Allows fans to manage notification subscriptions for creators. - Access: Public (via secure token or fan account). - Technical Notes: - Queries notification_subscriptions table. - Secure token-based access for unsubscribe links. - Responsive form with validation. 6.5 Creator Dashboard (Enhanced) - URL: creatorplatform.com/dashboard. - Description: Private interface for creators to manage profile content, events, and settings. - Access: Authenticated creators only. - Features Supporting Profile Page: - Edit profile (bio, images, social links, theme). - Manage events (create/edit/delete). - View contact form submissions. - Configure custom domain and notification settings. - Upload media and create posts/custom pages. - Analytics dashboard with visitor insights. - Profile wizard completion status. - Technical Notes: - Integrates with users, events, media, posts, and custom_pages tables. - Real-time analytics updates. - File upload management. 6.6 Profile Management Page - URL: creatorplatform.com/profile/manage - Description: Dedicated page for managing profile settings and content. - Access: Authenticated creators only. - Features: - Profile information editing - Theme customization - Media management - Event management - Blog post management - Analytics overview 7. API Endpoints All profile-related functionality will use API endpoints following the existing pattern: 7.1 Profile Management APIs - GET /api/profile/public/{username} - Get public profile data - PUT /api/profile/update - Update profile information - POST /api/profile/upload-image - Upload profile/cover images - GET /api/profile/analytics - Get profile analytics 7.2 Wizard APIs - GET /api/profile/wizard/progress - Get wizard progress - POST /api/profile/wizard/step/{step} - Save wizard step data - POST /api/profile/wizard/complete - Complete wizard 7.3 Event APIs - GET /api/profile/{username}/events - Get creator events - POST /api/profile/events - Create new event - PUT /api/profile/events/{id} - Update event - DELETE /api/profile/events/{id} - Delete event 7.4 Media APIs - POST /api/profile/media/upload - Upload media files - GET /api/profile/{username}/media - Get creator media - DELETE /api/profile/media/{id} - Delete media 7.5 Contact APIs - POST /api/profile/{username}/contact - Submit contact form - GET /api/profile/contact-submissions - Get contact submissions (creator only) 7.6 Notification APIs - POST /api/profile/{username}/subscribe - Subscribe to notifications - GET /api/profile/notifications/{token} - Manage subscriptions 8. Security & Performance Considerations 8.1 Security - Rate limiting on all forms (5 submissions per minute) - CSRF protection for all forms - File upload validation and virus scanning - Input sanitization for all user content - Secure token-based access for sensitive operations 8.2 Performance - Redis caching for profile pages (1 hour cache) - Image optimization and multiple sizes generation - CDN integration for static assets - Lazy loading for media galleries - Database indexing on frequently queried fields 8.3 SEO - Dynamic meta tags for each profile - Structured data markup for events - Sitemap generation for profiles - Canonical URLs to prevent duplicate content 9. Monetization Features 9.1 Premium Features - Custom domains (remove platform branding) - Advanced themes and customization - Priority support - Advanced analytics and insights - Unlimited media uploads 9.2 Revenue Tracking - Merchandise sales integration - Ticket sales tracking - Affiliate link management - Donation/tip system 10. Future Enhancements 10.1 Fan Engagement - Live chat widget - Fan comments on events and posts - RSVP system for events - Fan messaging system 10.2 Content Management - Content calendar - Bulk media upload - Auto-posting to social media - Newsletter integration 10.3 Analytics & Insights - Visitor demographics - Popular content tracking - Conversion tracking - A/B testing for themes This enhanced specification provides a comprehensive roadmap for implementing the Creator Public Profile system with proper prioritization, security considerations, and monetization opportunities.
0
đ Page Notes
+ Add New
Add New Note
Type
âšī¸ Info
đ Bug
⨠Feature Request
đĄ Improvement
â Missing Feature
đ¨ Design Changes
Title (optional)
Note Content
đ Add Note