Appearance
Manual Installation
Since InvoiceShelf is based on Laravel, the manual installation is very similar to Laravel. If you get stuck somewhere, you can also consult the official Laravel guide.
Requirements
PHP >= 8.2.0
BCMath PHP Extension
Ctype PHP Extension
cURL PHP Extension
DOM PHP Extension
Filter PHP Extension
Iconv PHP Extension
JSON PHP Extension
Mbstring PHP Extension
OpenSSL PHP Extension
PDO PHP Extension
Session PHP Extension
Tokenizer PHP Extension
XML PHP Extension
ZIP PHP Extension
Step 1 : Download
Download the latest InvoiceShelf package.
Alternatively, If you are a developer, follow the instructions to setup development environment on this Link
Step 2 : Upload to Server
Upload the downloaded zip file to your Server and unzip it, you should see the InvoiceShelf folder.
Step 3 : Point the domain to the uploaded folder
Point your domain or subdomain to the public
directory inside the InvoiceShelf folder.
Please note that, InvoiceShelf must be installed on a primary domain or subdomain. Installing on a sub-folder will not work, for example:
example.com/invoiceshelf
(Invalid)localhost/invoiceshelf
(Invalid)example.com
(Valid)invoiceshelf.example.com
(Valid)invoiceshelf.test
(Valid)
Step 3: Fix File Permissions
It is important to set the correct permissions for the storage and bootstrap/cache directories to ensure the application can write to these locations. Here are the steps:
- Set Permissions: In your root directory, run the following commands to set the appropriate permissions:
sh
chmod -R 775 storage
chmod -R 775 bootstrap/cache
- Change Ownership (Optional): Additionally, you may need to change the ownership of these directories to the web server user (e.g., www-data for Apache/Nginx on Linux systems):
sh
chown -R www-data:www-data storage
chown -R www-data:www-data bootstrap/cache
Step 4 : Copy Environment File
- Locate the Example File: In the root directory of your project, find the file named
.env.example
. - Copy the
.env.example
file and create a new file named.env
in the same root directory.
sh
cp .env.example .env
- Make sure you set APP_KEY. You can generate one using:
sh
php artisan key:generate
or generate it manually on the following link.
By following these steps, you will create a new .env
file that can be customized with your environment-specific settings.
For example, you can change the default SQLite database to MySQL or PostgreSQL.
Step 5 : Complete installation wizard
Open the link to the domain in the browser (Example: https://demo.invoiceshelf.com
) and complete the installation wizard as directed.