M2 Music - Music Streaming Platform With Laravel and Flutter App

Bluehost Shared Hosting

M2 Music — Complete Self-Hosted Music Streaming Platform With Flutter Mobile App

M2 Music is a fully self-hosted, white-label music streaming platform built for artists, fans, and platform owners. Artists upload singles, EPs, albums, and beats — then earn royalties from every verified stream. Fans discover music, build playlists, follow artists, subscribe to premium plans, and stream on the web or through the included Flutter mobile app for iOS and Android. You own the data, the brand, and the revenue. No per-stream SaaS fees. No third-party AI API required.

The package is a complete ecosystem: a Laravel 13 backend with REST API, a full admin panel, separate artist and fan web dashboards, a public marketing website with a built-in player, and a Flutter 3 mobile app (iOS + Android) that connects to the same API. Install once, run everywhere — web and mobile from one platform.

What’s Included

  • Laravel 13 Backend (PHP 8.2+) — REST API (Sanctum), MySQL database, queued jobs, scheduled tasks, royalty engine, subscription system, and full server-side discovery — powers both web and mobile
  • Flutter Mobile App (iOS + Android) — full-featured streaming app built with Flutter 3 and Dart; background audio, synced karaoke lyrics (LRC), offline downloads (premium), in-app subscriptions, tips, playlists, community, DMs, and artist tools — connects to the Laravel API
  • Admin Panel — platform dashboard, user/artist management, track & release approvals, genres, subscriptions, payouts, DMCA, ads, announcements, insights, global search, and settings
  • Artist Web Dashboard — upload singles/EPs/albums/beats, track management, earnings, insights, listener map, fans list, payout requests, community, and profile
  • Fan Web Dashboard — personalized home feed, browse, daily mix, charts, library, playlists, history, artist pages, community, direct messages, and subscriptions
  • Public Website — homepage with discovery sections, public artist profiles, track pages, playlist pages, marketing pages, legal pages, and built-in web player with queue
  • Web Installer Wizard — requirements check, database setup, migrations, seeding, and admin account creation in one guided flow
  • Full HTML Documentation — installation, Laravel setup, Flutter app configuration, APK/IPA build guide, payment gateway setup, rebranding, cron jobs, and troubleshooting

Flutter Mobile App (iOS + Android)

The included Flutter mobile app is a production-ready companion to the Laravel backend. One codebase builds for both iOS and Android and shares the same REST API, user accounts, subscriptions, and content as the web platform.

  • Music Streaming — play, pause, seek, queue, shuffle, repeat, and background audio (Android via just_audio_background)
  • Synced Karaoke Lyrics — time-synced LRC line highlighting in the mobile player
  • Offline Downloads — premium subscribers download tracks for offline listening
  • In-App Payments — subscriptions and artist tips via Stripe, PayPal, Paystack, and PawaPay with server-side verification
  • Discovery — home feed, charts, new releases, artist radio, search, autocomplete, and personalized recommendations
  • Playlists & Library — create playlists, like tracks, save to library, and view listening history
  • Social — follow artists, community feed, direct messages, notifications, and reposts
  • Artist Mode — upload tracks, view earnings and insights, and request payouts from the app
  • Ads — configurable ad placements for free-tier mobile listeners
  • Rebrandable — change app name, colors, API URL, and icons from lib/config/app_config.dart

User Roles & Access

  • Admin — full platform control via web admin panel
  • Artist — upload music and manage career from web dashboard or Flutter app
  • Producer / Label — dedicated registration roles with the same creator dashboard
  • Fan — stream on web or Flutter app; like, follow, subscribe, playlist, message, and join the community
  • Public Visitor — browse the website, play tracks, view profiles, and sign up to unlock web + mobile features

Artist Features (Web + Flutter App)

  • Upload Singles, EPs, Albums & Beats — from web dashboard or Flutter app; audio (MP3, WAV, FLAC), cover art, genre, mood, BPM, lyrics, LRC file, featured artists, and release scheduling
  • Track Management — edit metadata, view approval status, delete tracks, set free vs premium-only
  • Scheduled Releases — future go-live date with automatic cron publishing
  • Stream Royalties — earn per verified play with verified-artist and featured-track multipliers
  • Earnings Dashboard — per-track breakdown, balance, pending vs paid, CSV export (web)
  • Insights & Analytics — streams by day, top tracks, earnings by month, listener countries with world map (web)
  • Payout Requests — withdraw via Mobile Money (PawaPay) or Bank Transfer (web + app)
  • Community & DMs — post updates, receive engagement, message fans (web + app)
  • Weekly Email Digest — automated streams and earnings summary

Fan Features (Web + Flutter App)

  • Personalized Home Feed — quick access, made-for-you mixes, and recommendations
  • Browse & Search — genre, mood, release type filters; autocomplete on mobile
  • Daily Mix — up to three genre-based mixes from your taste profile
  • Charts — weekly, monthly, and all-time rankings
  • Library & Playlists — liked songs, followed artists, custom playlists (web + app)
  • Artist Pages — follow, play, view discography, featured-artist credits, tip artists
  • Community & DMs — posts, likes, comments, 1-to-1 messages with read receipts
  • Subscriptions — free tier with ads or premium with ad-free, HQ audio, and offline downloads on mobile
  • Notifications — follows, announcements, and activity alerts (web + app)

Public Website

  • Homepage — trending, featured, new releases, popular tracks, albums, top artists, genres
  • Public Profiles — artist pages, track pages, playlist pages with built-in player
  • Web Player — queue, shuffle, repeat, like, seek, and autoplay
  • Marketing & Legal Pages — About, Services, Contact, Privacy, Terms, DMCA, and more
  • Dark / Light / Auto Theme — visitor theme toggle
  • PWA-Ready — web app manifest for add-to-home-screen on mobile browsers (complements the native Flutter app)

Admin Panel

  • Dashboard — KPIs, stream trends, pending approvals, top tracks
  • User & Artist Management — verify, suspend, create, delete
  • Content Moderation — approve/reject tracks and releases, flag content, bulk actions
  • Finance — earnings overview, payout approval, CSV export, subscription plans, free-tier rules
  • Marketing — announcements, ads manager (banner, video, audio preroll), InMobi/Audiomob settings
  • Compliance — DMCA review queue, community moderation
  • System — feature toggles, branding, SMTP, gateway tester, admin 2FA, global search

Payments & Monetization (Web + Flutter App)

  • 4 Payment Gateways — Stripe, PayPal, Paystack, PawaPay (web checkout + Flutter in-app checkout)
  • Subscriptions — recurring billing, plan tiers, trials, free-tier play limits
  • Artist Tips — fans tip artists from web profiles or the Flutter app
  • Stream Royalties — automatic per-play earnings with multipliers
  • Artist Payouts — Mobile Money (PawaPay) and Bank Transfer with admin approval
  • Multi-Currency & Country Matrix — per-gateway currencies and payout country controls
  • Ad-Supported Free Tier — play caps with ads on web and mobile

Recommendations & Discovery — No External AI API Required

Daily Mix, Artist Radio, and Recommendations run on your server using database queries — genre matching, play history, follower graphs, and popularity scoring. No OpenAI, Gemini, Claude, or any AI API key is required. Works identically on web and Flutter app.

Music Player & Audio

  • Web Player — queue, shuffle, repeat, like, seek, autoplay
  • Flutter Mobile Player — background audio, queue, shuffle, repeat, synced LRC karaoke lyrics, offline playback (premium)
  • Audio Pipeline — MP3/WAV/FLAC upload, getID3 duration extraction, optional FFmpeg transcoding to 192kbps MP3 via queued jobs

Community, Security & Compliance

  • Community Feed — posts, images, likes, comments, reposts (web + app)
  • Direct Messages — 1-to-1 inbox with read receipts (web + app)
  • Artist Verification Badge — admin-granted with higher royalty multiplier
  • DMCA Workflow — public form + admin review queue
  • Track Approval — all uploads reviewed before going live on web and app
  • Play Throttling — API rate limiting to reduce fake-stream abuse
  • Admin Email 2FA — optional two-factor for admin login

Feature Switches (No Code Changes)

Toggle from admin: Charts, Artist Radio, Synced Lyrics, Tips, Downloads, Recommendations, History, Search, Community, DMs, and Playlists — applies to web and mobile API.

Email & SEO

  • Transactional Emails — welcome, track approved/rejected, subscription, payout, and more
  • Weekly Digests — automated artist and fan email summaries (cron)
  • Dynamic Sitemap — auto-generated sitemap.xml
  • White-Label Branding — app name, logos, colors on web; rebrandable Flutter app config

Tech Stack

  • Backend: Laravel 13, PHP 8.2+, MySQL 8.0+
  • Mobile App: Flutter 3.27+, Dart 3.x, just_audio, just_audio_background — iOS + Android from one codebase
  • API: Laravel Sanctum REST API (shared by web dashboards and Flutter app)
  • Payments: Stripe, PayPal, Paystack, PawaPay
  • Audio: getID3 + optional FFmpeg
  • Web: Blade, vanilla JS, Hotwire Turbo

Files Included

  • Laravel backend source code (PHP, Blade, CSS, JavaScript)
  • Flutter mobile app source code (Dart) — complete iOS & Android project
  • Full HTML documentation — Laravel install + Flutter setup + APK/IPA build guide
  • Database migrations and idempotent seeders
  • Web installer wizard
  • PWA manifest and app icons

Browser & Device Support

Web: Chrome, Firefox, Safari, Edge (latest). Flutter Mobile App: Android 5.0+ / iOS 13+. Server: Linux hosting, PHP 8.2+, MySQL, optional FFmpeg, cron support.

⚠ Third-Party Payment Gateway Fees — Important Disclosure

M2 Music integrates with external payment gateways on web and in the Flutter app. Each requires its own merchant account. Fees are separate from this item and deducted by the provider:

  • Stripe — approx. 2.9% + $0.30 per transaction — stripe.com/pricing
  • PayPal — approx. 3.49% + fixed fee — paypal.com/fees
  • Paystack — 1.5% + ₦100 local / 3.9% international — paystack.com/pricing
  • PawaPay — mobile money payouts — pawapay.io

All fees are approximate and subject to change. Gateway fees are not collected by this script.

Requirements

  • PHP 8.2+, MySQL 8.0+, Composer, writable storage directories
  • Flutter SDK 3.27+ for building the iOS and Android app
  • Xcode (macOS) for iOS builds; Android Studio / SDK for Android builds
  • FFmpeg optional (audio transcoding)
  • Cron job support (releases, digests, queue worker, subscription expiry)

0 average based on 0 ratings.

OKAO-EMMANUEL

OKAO-EMMANUEL

Visit Author's Portfolio

View Portfolio
Last Update 2026-07-02
Created 2026-07-02
Sales 0
Discussion Comments
Software Version Laravel iOS 15 iOS 14 iOS 13 iOS 12 Android 15.0 Android 12.0
Files Included CSS PHP HTML .apk Dart .plist .swift
Video Preview Resolution