User Profile Management package for JinyPHP - Comprehensive social profiles, personal information, and profile management system.
- Phone Management: Multi-phone number support with sharded database architecture
- Address Management: Multiple address storage with type categorization (home, work, shipping, billing)
- Social Profiles: Social media account integration and management
- Privacy Settings: Granular privacy control for user information
- Security Settings: Password and email management
- Linked Accounts: External account connection management
- User Phone Management: Administrative interface for managing user phone numbers
- User Address Management: Administrative interface for managing user addresses
- Bulk Operations: Efficient management tools for administrators
- PHP 8.2+
- Laravel 12.0+
- jiny/auth: Required dependency for authentication and user management
- Install the package via Composer:
composer require jiny/profiles-
The service provider will be automatically registered via Laravel's package discovery.
-
Run migrations to create required tables:
php artisan migrateThis package uses sharded tables for optimal performance:
- Phone Numbers:
phones_001tophones_016 - Addresses:
addresses_001toaddresses_016
Users are distributed across shards based on their shard_id for improved database performance.
/home/profile/phone - Phone number management
/home/profile/address - Address management
/home/profile/social - Social profile settings
/home/profile/privacy - Privacy settings
/home/profile/security - Security settings
/home/profile/linked-accounts - External account management
/admin/user-phone - Admin phone management
/admin/user-address - Admin address management
// Phone Management
Jiny\Profiles\Http\Controllers\Home\Profile\Phone\IndexController
Jiny\Profiles\Http\Controllers\Home\Profile\Phone\StoreController
Jiny\Profiles\Http\Controllers\Home\Profile\Phone\SetPrimaryController
Jiny\Profiles\Http\Controllers\Home\Profile\Phone\DeleteController
// Address Management
Jiny\Profiles\Http\Controllers\Home\Profile\Address\IndexController
Jiny\Profiles\Http\Controllers\Home\Profile\Address\StoreController
Jiny\Profiles\Http\Controllers\Home\Profile\Address\SetDefaultController
Jiny\Profiles\Http\Controllers\Home\Profile\Address\DeleteController// User Phone Management
Jiny\Profiles\Http\Controllers\Admin\UserPhone\*
// User Address Management
Jiny\Profiles\Http\Controllers\Admin\UserAddress\*Views are available under the jiny-profiles:: namespace:
// Home views
'jiny-profiles::home.profile.phone.index'
'jiny-profiles::home.profile.address.index'
'jiny-profiles::home.social.index'
'jiny-profiles::home.privacy.index'
'jiny-profiles::home.security.index'
'jiny-profiles::home.linked-accounts.index'
// Admin views
'jiny-profiles::admin.user-phone.index'
'jiny-profiles::admin.user-address.index'Publish the configuration file:
php artisan vendor:publish --provider="Jiny\Profiles\JinyProfilesServiceProvider" --tag="config"- Multiple phone numbers per user
- Country code support
- Primary phone designation
- Phone verification status
- Sharded storage for performance
- Multiple addresses per user
- Address categorization (home, work, shipping, billing)
- Default address selection
- International address support
- Sharded storage for performance
- Social media profile management
- External account linking
- Privacy control for social information
- Password management
- Email updates
- Privacy settings control
- Account security monitoring
This package requires the following Jiny packages:
- jiny/auth: Core authentication and user management functionality
The package implements database sharding for scalability:
- Users are assigned to shards (1-16) based on their
shard_id - Phone numbers and addresses are stored in corresponding shard tables
- This approach distributes database load and improves query performance
- Uses
jwtmiddleware for API authentication - Compatible with jiny/auth authentication system
- Supports session-based and token-based authentication
Run the test suite:
vendor/bin/phpunitThis package is open-sourced software licensed under the MIT license.
- hojinlee - infohojin@gmail.com
- Homepage: http://www.jinyphp.com
Please see CONTRIBUTING.md for details on how to contribute to this project.
Please see CHANGELOG.md for recent changes.