Overview
src-phone is a modular FiveM phone resource. The phone shell owns the physical frame, lock screen, status bar, Dynamic Island, common navigation, application switcher, notifications, control center, and home gesture. Built-in and third-party applications run inside that shell.
Current resource version: 1.0.3
Supported frameworks
QBCore
QBox
ESX
vRP
Standalone
The selected framework is defined once in shared/config.lua and passed to the bridge layer. Garage, vehicle key, fuel, voice, character, job, and money operations are isolated behind bridge files so framework-specific changes do not need to be made in the web application.
Runtime architecture
client/
Phone visibility, NUI callbacks, camera, calls, application bridges, router placement, and external application registry.
server/
Persistence, validation, messaging, mail, social applications, cloud accounts, wallet, cellular data, and router state.
bridge/
Framework, garage, keys, fuel, voice, contacts, mail, messages, and service-directory integrations.
shared/
Public configuration and shared Lua modules.
web/
React phone shell and built-in applications. Production uses web/dist.
locales/
Lua and JSON locale catalogs.
Included systems
The default package includes:
Phone calls, optional video calls, call history, speaker routing, and voice integration.
Messages, contacts, reactions, replies, read receipts, pins, media, and transfers.
Mail, camera, gallery, notes, clock, voice memos, maps, music, news, and Yellow Pages.
Z, MyFans, and Vibe social applications.
Bank view, services directory, garage controls, vehicle tracking, and valet.
MyCloud account-scoped settings and data.
Crypto wallet balances, swaps, transfers, and transaction history.
Placeable Wi-Fi routers, quota accounting, and personal cellular data plans.
Light and dark themes, localized UI, configurable home layout, widgets, lock screen, and notifications.
Versioned third-party application registration through a separate FiveM resource.
Stable integration boundary
Third-party resources should use the exports documented in API and Exports. The src-phone:server:* and src-phone:client:* events used by built-in applications are internal transport. Their payloads may change and they should not be called directly by integrations.
Custom phone applications must use the external application contract described in Custom Applications. This keeps application CSS, navigation, and overlays from modifying the phone header or Dynamic Island.
Recommended reading order
Last updated

