Skip to content

itriedcoding/fivem-framework

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 

Repository files navigation

🚀 FiveM Framework

Version License Platform.

🌟 Overview

The FiveM Framework is a comprehensive, enterprise-grade framework designed for FiveM servers. Built with Lua and Python, it provides 40+ advanced features with complete separation of concerns, modular architecture, and cross-platform support.

🎯 Features (40+ Advanced Systems)

🏗️ Core Systems

  • Advanced Player Management - Complete player lifecycle management
  • Dynamic Economy System - Real-time economy with inflation/deflation
  • Advanced Job System - 15+ jobs with progression and benefits
  • Property Management - Buy, sell, rent, and manage properties
  • Vehicle System - Advanced vehicle spawning, customization, and management
  • Inventory System - Weight-based inventory with item categories
  • Banking System - Multi-bank support with loans and investments
  • Government System - Elections, laws, and political simulation
  • Legal System - Court cases, lawyers, and justice system
  • Medical System - Hospitals, doctors, and medical emergencies

🎮 Gameplay Features

  • Advanced Roleplay - Character creation, backstories, and development
  • Gang System - Territory control, wars, and hierarchy
  • Business System - Own and manage various businesses
  • Event System - Dynamic events and community activities
  • Weather System - Realistic weather patterns and effects
  • Time System - Custom time progression and day/night cycles
  • Radio System - Custom radio stations and music
  • Phone System - Advanced mobile phone with apps
  • Social Media - In-game social platform
  • Streaming System - Live streaming and content creation

🔧 Technical Features

  • Advanced Database - MySQL/PostgreSQL with optimization
  • API System - RESTful APIs for external integrations
  • Web Dashboard - Real-time server management
  • Anti-Cheat System - Advanced detection and prevention
  • Logging System - Comprehensive logging and analytics
  • Backup System - Automated backups and recovery
  • Performance Monitor - Real-time performance tracking
  • Security System - Advanced security measures
  • Plugin System - Modular plugin architecture
  • Update System - Automatic updates and versioning

🌐 Integration Features

  • Discord Integration - Bot commands and notifications
  • Webhook System - Real-time notifications
  • External APIs - Third-party service integrations
  • Analytics - Advanced analytics and reporting
  • Monitoring - Server health monitoring
  • Backup Cloud - Cloud backup integration
  • CDN Support - Content delivery network
  • Load Balancing - Multi-server support
  • Clustering - Server clustering capabilities
  • Microservices - Microservice architecture

🚀 Quick Start

Prerequisites

  • FiveM Server (Latest version)
  • Node.js 16+ (for web dashboard)
  • Python 3.8+ (for backend services)
  • MySQL/PostgreSQL (for database)
  • Redis (for caching)

Installation

Windows 10/11

# Clone the repository
git clone https://github.com/itriedcoding/fivem-framework.git
cd advanced-fivem-framework

# Run the Windows installer
./installers/windows-install.bat

# Start the server
./start-server.bat

macOS

# Clone the repository
git clone https://github.com/itriedcoding/fivem-framework.git
cd fivem-framework

# Run the macOS installer
chmod +x ./installers/macos-install.sh
./installers/macos-install.sh

# Start the server
./start-server.sh

Linux/Debian

# Clone the repository
git clone https://github.com/itriedcoding/fivem-framework.git
cd fivem-framework

# Run the Linux installer
chmod +x ./installers/linux-install.sh
./installers/linux-install.sh

# Start the server
./start-server.sh

VPS Installation

Ubuntu/Debian VPS

# Update system
sudo apt update && sudo apt upgrade -y

# Install dependencies
sudo apt install -y git curl wget unzip

# Clone and install
git clone https://github.com/itriedcoding/fivem-framework.git
cd fivem-framework
chmod +x ./installers/vps-install.sh
sudo ./installers/vps-install.sh

# Configure firewall
sudo ufw allow 30120
sudo ufw allow 80
sudo ufw allow 443

# Start services
sudo systemctl start fivem-framework
sudo systemctl enable fivem-framework

CentOS/RHEL VPS

# Update system
sudo yum update -y

# Install dependencies
sudo yum install -y git curl wget unzip

# Clone and install
git clone https://github.com/itriedcoding/fivem-framework.git
cd fivem-framework
chmod +x ./installers/centos-install.sh
sudo ./installers/centos-install.sh

# Configure firewall
sudo firewall-cmd --permanent --add-port=30120/tcp
sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --permanent --add-port=443/tcp
sudo firewall-cmd --reload

# Start services
sudo systemctl start fivem-framework
sudo systemctl enable fivem-framework

📁 Project Structure

advanced-fivem-framework/
├── 📁 core/                    # Core framework files
│   ├── server.lua
│   ├── client.lua
│   └── shared.lua
├── 📁 features/                # Individual feature modules
│   ├── 📁 player-management/
│   ├── 📁 economy-system/
│   ├── 📁 job-system/
│   ├── 📁 property-management/
│   ├── 📁 vehicle-system/
│   ├── 📁 inventory-system/
│   ├── 📁 banking-system/
│   ├── 📁 government-system/
│   ├── 📁 legal-system/
│   ├── 📁 medical-system/
│   ├── 📁 roleplay/
│   ├── 📁 gang-system/
│   ├── 📁 business-system/
│   ├── 📁 event-system/
│   ├── 📁 weather-system/
│   ├── 📁 time-system/
│   ├── 📁 radio-system/
│   ├── 📁 phone-system/
│   ├── 📁 social-media/
│   ├── 📁 streaming-system/
│   ├── 📁 database/
│   ├── 📁 api-system/
│   ├── 📁 web-dashboard/
│   ├── 📁 anti-cheat/
│   ├── 📁 logging/
│   ├── 📁 backup/
│   ├── 📁 performance/
│   ├── 📁 security/
│   ├── 📁 plugin-system/
│   ├── 📁 update-system/
│   ├── 📁 discord-integration/
│   ├── 📁 webhook/
│   ├── 📁 external-apis/
│   ├── 📁 analytics/
│   ├── 📁 monitoring/
│   ├── 📁 backup-cloud/
│   ├── 📁 cdn/
│   ├── 📁 load-balancing/
│   ├── 📁 clustering/
│   └── 📁 microservices/
├── 📁 python-backend/          # Python backend services
│   ├── 📁 api/
│   ├── 📁 database/
│   ├── 📁 analytics/
│   ├── 📁 monitoring/
│   └── 📁 services/
├── 📁 web-dashboard/           # Web management dashboard
│   ├── 📁 frontend/
│   ├── 📁 backend/
│   └── 📁 public/
├── 📁 installers/              # Platform-specific installers
│   ├── windows-install.bat
│   ├── macos-install.sh
│   ├── linux-install.sh
│   ├── vps-install.sh
│   └── centos-install.sh
├── 📁 config/                  # Configuration files
│   ├── database.json
│   ├── server.json
│   ├── features.json
│   └── security.json
├── 📁 docs/                    # Documentation
│   ├── api-docs.md
│   ├── feature-guides.md
│   └── troubleshooting.md
├── 📁 tests/                   # Test files
│   ├── unit-tests/
│   ├── integration-tests/
│   └── performance-tests/
├── 📁 scripts/                 # Utility scripts
│   ├── backup.sh
│   ├── update.sh
│   └── maintenance.sh
├── 📄 fxmanifest.lua           # FiveM manifest
├── 📄 package.json             # Node.js dependencies
├── 📄 requirements.txt         # Python dependencies
├── 📄 docker-compose.yml       # Docker configuration
├── 📄 Dockerfile               # Docker image
└── 📄 LICENSE                  # License file

🔧 Configuration

Database Configuration

Edit config/database.json:

{
  "type": "mysql",
  "host": "localhost",
  "port": 3306,
  "username": "fivem_user",
  "password": "secure_password",
  "database": "fivem_framework"
}

Server Configuration

Edit config/server.json:

{
  "server_name": "Advanced FiveM Server",
  "max_players": 128,
  "tick_rate": 64,
  "resources": {
    "start": ["advanced-fivem-framework"]
  }
}

🌐 Web Dashboard

Access the web dashboard at: http://localhost:3000

Features:

  • Real-time server monitoring
  • Player management
  • Economy overview
  • Performance metrics
  • Log viewer
  • Configuration management

📊 API Documentation

The framework includes a comprehensive REST API. Access the API documentation at: http://localhost:3000/api/docs

Key Endpoints:

  • GET /api/players - Get all players
  • POST /api/players - Create new player
  • GET /api/economy - Get economy data
  • POST /api/economy/transaction - Process transaction
  • GET /api/analytics - Get analytics data

🛡️ Security Features

  • Advanced Anti-Cheat - Real-time detection and prevention
  • Rate Limiting - API and command rate limiting
  • Input Validation - Comprehensive input sanitization
  • SQL Injection Protection - Parameterized queries
  • XSS Protection - Cross-site scripting prevention
  • CSRF Protection - Cross-site request forgery prevention
  • Encryption - Data encryption at rest and in transit
  • Authentication - Multi-factor authentication
  • Authorization - Role-based access control
  • Audit Logging - Comprehensive audit trails

🚀 Performance Optimization

  • Database Optimization - Indexed queries and connection pooling
  • Caching - Redis-based caching system
  • Load Balancing - Multi-server load distribution
  • CDN Integration - Content delivery network
  • Resource Optimization - Efficient resource management
  • Memory Management - Advanced memory optimization
  • CPU Optimization - Multi-threaded processing
  • Network Optimization - Optimized network protocols
  • Compression - Data compression and minification
  • Monitoring - Real-time performance monitoring

🔌 Plugin System

The framework supports a modular plugin system. Create custom plugins in the features/ directory:

-- Example plugin structure
local Plugin = {}

function Plugin:Initialize()
    -- Plugin initialization
end

function Plugin:OnPlayerJoin(playerId)
    -- Handle player join
end

return Plugin

📈 Analytics & Monitoring

  • Real-time Metrics - Live server statistics
  • Performance Monitoring - CPU, memory, and network usage
  • Player Analytics - Player behavior and engagement
  • Economy Analytics - Economic trends and patterns
  • Error Tracking - Comprehensive error logging
  • Uptime Monitoring - Server availability tracking
  • Custom Dashboards - Configurable monitoring dashboards
  • Alerting - Automated alert system
  • Reporting - Detailed reports and insights
  • Data Export - Export data in various formats

🧪 Testing

Run the test suite:

# Unit tests
npm run test:unit

# Integration tests
npm run test:integration

# Performance tests
npm run test:performance

# All tests
npm run test

📝 Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests
  5. Submit a pull request

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

🆘 Support

🙏 Acknowledgments

  • FiveM Community
  • Lua Community
  • Python Community
  • Open Source Contributors

Made with ❤️ by itriedcoding

About

FiveM framework you can use for free, for your FiveM server.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages