Installation
Welcome to your journey with Fuwafuwa Framework! This guide will walk you through the installation process, ensuring you have everything you need to start building amazing web applications. Whether you're setting up a local development environment or deploying to a production server, we've got you covered.
Getting started with Fuwafuwa is refreshingly simple. Unlike other frameworks that require complex configuration processes, Fuwafuwa is designed to work out of the box. With just a few steps, you'll have a fully functional web application running and ready for customization.
Prerequisites
Before you begin, make sure your system meets the minimum requirements to run Fuwafuwa Framework. These requirements are carefully chosen to ensure compatibility with modern hosting environments while maintaining optimal performance.
- PHP 8.4 or newer - We recommend using the latest stable version for optimal performance and security
- PDO extension with SQLite3 driver - Provides database connectivity (SQLite is the default, but other databases are supported)
Optional but Recommended
While not strictly required, these tools can enhance your development experience:
- Node.js and npm/yarn - For Tailwind CSS customization and advanced frontend development
- SSH access with rsync - For efficient server deployment and synchronization
- Git - For version control and collaborative development
- A modern code editor - Such as VS Code, PHPStorm, or Sublime Text
Installation Methods
1. Local Development Server
- Unzip the Fuwafuwa Framework package
- Navigate to the application folder in your terminal
- Run the following command:
php -S localhost:8080
Your application will be accessible at http://localhost:8080 in your web browser.
2. Web Hosting
A. Uploading via File Manager
- Upload the entire Fuwafuwa Framework package content to your web hosting folder
- Access the application directly through your web browser
B. Uploading via SSH with rsync
(Assuming your hosting provider offers SSH with rsync)
Run the following command from the application folder:
sh sync.sh -i
Make sure to modify the REMOTE variable within the sync.sh script before execution. This script can be used for future updates as well.
Web Server Configuration
Fuwafuwa Framework is compatible with various web server environments.
A. Apache / LiteSpeed
Apache is the assumed platform for much of the documentation. The default configuration should work out of the box with the included .htaccess file.
B. Nginx
For Nginx servers, incorporate the following configuration into your server block:
server {
root /var/www/html;
location / {
index index.php index.html index.htm;
try_files $uri /index.php?$query_string;
}
location ~ \.php$ {
fastcgi_pass unix:/var/run/php/php8.0-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
C. Lighttpd
$HTTP["host"] =~ "www\.example\.com$" {
url.rewrite-once = (
"^/(.*?)(\?.+)?$" => "/index.php/$1?$2"
)
server.error-handler-404 = "/index.php"
}
D. IIS
For IIS, install the URL rewrite module and create a web.config file:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="Application" stopProcessing="true">
<match url=".*" ignoreCase="false" />
<conditions logicalGrouping="MatchAll">
<add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" negate="true" />
</conditions>
<action type="Rewrite" url="index.php" appendQueryString="true" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
Additional Notes
- Fuwafuwa Framework doesn't require a root folder placement on your hosting. You can place it within any subfolder.
- Node.js and npm/yarn are only necessary if you intend to modify styles using Tailwind CSS. The provided theme doesn't require this step.