Getting Started with FearlessCMS

Getting Started with FearlessCMS

Welcome to FearlessCMS! This guide will walk you through the installation and initial setup process to get your CMS up and running.

📋 Table of Contents

🖥️ System Requirements

PHP Requirements

Server Requirements

Optional Dependencies

🚀 Installation Methods

Method 1: Automated Installer (Recommended)

The easiest way to install FearlessCMS is using the built-in installer:

  1. Download and Extract

    # Download FearlessCMS
    wget https://github.com/your-repo/FearlessCMS/archive/main.zip
    unzip main.zip
    cd FearlessCMS-main
  2. Run the Installer

    # Web-based installation
    # Navigate to install.php in your browser
    http://your-domain.com/install.php
    
    # Or use command-line installation
    php install.php --check
    php install.php --create-dirs
    php install.php --install-export-deps
    php install.php --create-admin=admin --password=yourpassword
  3. Complete Installation

    • Create necessary directories
    • Install export dependencies
    • Create administrator account
    • Set up initial configuration

Method 2: Manual Installation

For advanced users who prefer manual setup:

  1. Create Directory Structure

    mkdir -p config admin/uploads uploads content sessions cache backups .fcms_updates
  2. Set Permissions

    chmod 755 config admin/uploads uploads content sessions cache backups .fcms_updates
  3. Create Configuration Files

    # Copy and modify example configuration files
    cp config.example/* config/

⚙️ Initial Setup

1. Directory Creation

The installer will create these essential directories:

FearlessCMS/
├── config/                 # Configuration files
├── admin/uploads/          # Admin file uploads
├── uploads/                # Public file uploads
├── content/                # Content files
├── sessions/               # Session storage
├── cache/                  # Cache files
├── backups/                # Backup storage
└── .fcms_updates/         # Update files

2. Configuration Files

Essential configuration files are created:

3. Administrator Account

Create your first admin account:

php install.php --create-admin=admin --password=securepassword123

Security Note: Use a strong, unique password!

🎯 First Steps

1. Access Your Site

2. Choose CMS Mode

Select your operational mode in the admin panel:

3. Select a Theme

Choose from available themes or create your own:

4. Create Your First Content

🔧 Configuration

Site Configuration

Edit config/config.json:

{
    "site_name": "My Awesome Site",
    "site_description": "A great website built with FearlessCMS",
    "admin_path": "admin",
    "default_theme": "default"
}

CMS Mode Configuration

Edit config/cms_mode.json:

{
    "mode": "full-featured"
}

Available Modes:

Theme Options

Customize your theme in config/theme_options.json:

{
    "logo": "/uploads/logo.png",
    "hero_banner": "/uploads/hero.jpg",
    "accent_color": "#007bff",
    "show_sidebar": true
}

🎨 Ad Area System

Automatic Integration

The Ad Area System automatically integrates with all themes:

Customization

Edit themes/ad-area.html to customize:

Testing

Test the ad area system:

  1. Change CMS mode to hosting service mode
  2. Navigate to any page
  3. Verify ad area appears
  4. Test across different themes

🔧 Troubleshooting

Common Installation Issues

Permission Errors

# Check directory permissions
ls -la config/
ls -la uploads/

# Fix permissions
chmod 755 config uploads
chown www-data:www-data config uploads

PHP Extension Issues

# Check loaded extensions
php -m | grep -E "(curl|json|mbstring|phar|zip|openssl)"

# Install missing extensions (Ubuntu/Debian)
sudo apt install php-curl php-json php-mbstring php-phar php-zip php-openssl

Node.js Dependencies

# Check Node.js installation
node --version
npm --version

# Install if missing
curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
sudo apt-get install -y nodejs

Getting Help

  1. Check Error Logs: Review PHP and web server error logs
  2. Verify Requirements: Use php install.php --check
  3. Test Permissions: Ensure write access to directories
  4. Community Support: Ask questions in project forums

🛡️ Security Best Practices

After Installation

  1. Delete Installer: rm install.php
  2. Secure Permissions: chmod 644 config/*.json
  3. Use HTTPS: Enable SSL/TLS in production
  4. Regular Updates: Keep PHP and dependencies updated

Production Deployment

  1. Environment Variables: Use FCMS_CONFIG_DIR for external config
  2. Firewall Rules: Restrict admin access
  3. Backup Strategy: Regular backups of config and content
  4. Monitoring: Log access and error events

📚 Next Steps

Learn More

Available Plugins

FearlessCMS comes with several built-in plugins to enhance your website:

Advanced Configuration

🆘 Support

If you need help getting started:

  1. Check this guide for common solutions
  2. Review error messages for specific issues
  3. Verify system requirements using the installer
  4. Ask the community for additional support

Welcome to FearlessCMS! 🚀

This documentation is maintained by the FearlessCMS community. Last updated: January 2024