gp247 / cms
Free CMS source code built with Laravel for your system.
Installs: 20
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 1
Forks: 0
Open Issues: 0
Type:project
Requires
- php: ^8.2
- gp247/core: ~1.1
- gp247/front: ~1.1
- laravel/framework: ^12.0
- laravel/tinker: ^2.9
Requires (Dev)
- barryvdh/laravel-debugbar: ^3.15
- fakerphp/faker: ^1.23
- laravel/pail: ^1.1
- laravel/pint: ^1.13
- laravel/sail: ^1.26
- mockery/mockery: ^1.6
- nunomaduro/collision: ^8.1
- phpunit/phpunit: ^11.0.1
README
Free CMS source code built with Laravel for your system
composer create-project gp247/cms
About GP247 CMS
- GP247 CMS makes it easy for you to build a website for your business.
- GP247 CMS is a complete system, combining
GP247/front
andGP247/core
.
What can GP247 do?
- Provides a powerful and flexible role management solution.
- Offers a synchronous authentication API, enhancing API security with additional layers.
- Build and manage Plugins/Templates that work in the system
- Comprehensive access log monitoring system.
- Continuously updates security vulnerabilities.
- Multi-language support, easy to manage.
- GP247 is FREE
And more:
- GP247 builds an open ecosystem (plugin, template), helping users quickly build CMS, PMO, eCommerce, etc., according to your needs.
Core Laravel:
GP247 1.x
Core Laravel framework 12.x
Website structure using GP247
Website-folder/
|
├── app
│ └── GP247
│ ├── Core(+) //Customize controller of Core
│ ├── Helpers(+) //Auto load Helpers/*.php
│ ├── Plugins(+) //Use `php artisan gp247:make-plugin --name=NameOfPlugin`
│ ├── Front(+) //Customize controller of Front
│ └── Templates(+) //Use `php artisan gp247:make-template --name=NameOfTempate`
├── public
│ └── GP247
│ ├── Core(+)
│ ├── Plugins(+)
│ └── Templates(+)
├── resources
│ └── views/vendor
│ |── gp247-core(+) //Customize view core
│ └── gp247-front(+) //Customize view front
├── vendor
│ ├── gp247/core
│ └── gp247/front
└──...
Quick Installation Guide
-
Step 1:
Run the command:
composer create-project gp247/cms website-folder
-
Step 2: Check the configuration in the .env file
Ensure that the database configuration and APP_KEY information in the .env file are complete.
If the APP_KEY is not set, use the following command to generate it:
php artisan key:generate
-
Step 3: Configure database
By default, GP247 uses MySQL. The configuration will be saved in the .env file as follows:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=gp247
DB_USERNAME=root
DB_PASSWORD=
If you want to use SQLite for quick testing, please change the connection in the .env file to sqlite, and comment out the DB_HOST, DB_PORT, DB_DATABASE, DB_USERNAME, DB_PASSWORD lines.
DB_CONNECTION=sqlite
#DB_HOST=127.0.0.1
#DB_PORT=3306
#DB_DATABASE=gp247
#DB_USERNAME=root
#DB_PASSWORD=
-
Step 4: Install GP247 CMS
Run the command:
php artisan cms:install
Useful information:
View GP247 version
php artisan cms:info
Update GP247
Update the package using the command:
composer update gp247/core
composer update gp247/front
Then, run the command:
php artisan cms:update
Create plugin:
php artisan gp247:make-plugin --name=PluginName
To create a zip file plugin:
php artisan gp247:make-plugin --name=PluginName --download=1
Create template:
php artisan gp247:make-template --name=TemplateName
To create a zip file template:
php artisan gp247:make-template --name=TemplateName --download=1
Customization
Customize admin view
php artisan vendor:publish --tag=gp247:view-core
Override gp247_xxx functions
Step 1: Add the list of functions you want to override to the array in
app/config/gp247_functions_except.php
Step 2: Create a new function in the
app/GP247/Helpers
directory, for exampleapp/GP247/Helpers/myfunction.php
Override gp247 controller files
Step 1: Copy the controller files you want to override from vendor/gp247/core/src/Core/Controllers -> app/GP247/Core/Admin/Controllers
Step 2: Change
namespace GP247\Core\Admin\Controllers
tonamespace App\GP247\Core\Admin\Controllers
Override gp247 API controller files
Step 1: Copy the controller files you want to override from vendor/gp247/core/src/Api/Controllers -> app/GP247/Core/Api/Controllers
Step 2: Change
namespace GP247\Core\Api\Controllers
tonamespace App\GP247\Core\Api\Controllers
Add route
Use prefix and middleware constants GP247_ADMIN_PREFIX
, GP247_ADMIN_MIDDLEWARE
in route declaration.
Reference: https://github.com/gp247net/core/blob/master/src/Admin/routes.php
Environment variables in .env file
Quickly disable GP247 and plugins
GP247_ACTIVE=1
// To disable, set value 0
Disable APIs
GP247_API_MODE=1
// To disable, set value 0
Data table prefixes
GP247_DB_PREFIX=gp247_
//Cannot change after installing gp247
Path prefix to admin
GP247_ADMIN_PREFIX=gp247_admin