🕊 Project Vireo
Project Vireo is a open-source blog system based on Lumen (Laravel) 5.8.
It is designed to replace Hexo as a slim yet highly extendable and customizable dynamic blog system.
Setup a Server
- Buy a server and a domain (if you want)
- Prepare the environment (If you are not familiar with this, I suggest using the LAMP script):
- Linux: CentOS 7 or Ubuntu 18.04 recommended
- Apache httpd 2 (Nginx not recommended)
- MariaDB 10 (MySQL also acceptable)
- PHP 7.2.18+
- Fork this repository and clone it to the server, then run
composer installto install dependencies.
- Make up your own configuration in
.envfile (copy one from
.env.example), including a random Webhook key, the longer the better (32-char is OK).
- Setup MariaDB with the user, password and database as you edited in
php artisan migrateto migrate database tables.
php artisan key:generateto generate storage keys.
sudo chgrp -R www-data .to change owner to the project folder. Please notice in some distributions the Apache user is called
sudo chmod +x auto-deploy.shto give it execute privilege.
- Setup your apache virtual host and add webhook
https://your_site.com/deployusing the key in
.envto your remote code repository.
Write and Deploy
- Clone your forked repository to your local environment. (It is supposed to have PHP7.2+ and MariaDB installed.) You will find the posts and docs in
php -S localhost:8000 -t publicto start a development server.
- To write a post, run
php artisan vireo:postand enter details, the post will be generated as
- To write a document, run
php artisan vireo:documentand enter details, the document will be generated as
- To add images or files, just put them in the same folder where
php artisan vireo:cacheto let Vireo read the files and put them in the database.
- Refresh the page and you can see the new pages.
Extend and Customize
- You can add more pages or functions by adding controllers, views and routes. Detailed methods can be found in Laravel documentation.
- All pages are renderred using Laravel blade template. You can edit them in
/resources/viewsfolder. More usage can be found in Laravel documentation.
- You can modify CSS stylesheet or JS scripts in
Vireo can be distributed under the MIT License.
Used libraries are (through CDN):