https://github.com/ajenbo/agcms
A simple battle proven CMS with a Laravel like code base
https://github.com/ajenbo/agcms
cms
Last synced: over 1 year ago
JSON representation
A simple battle proven CMS with a Laravel like code base
- Host: GitHub
- URL: https://github.com/ajenbo/agcms
- Owner: AJenbo
- License: gpl-2.0
- Created: 2017-05-23T22:44:46.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2024-05-18T15:30:14.000Z (about 2 years ago)
- Last Synced: 2025-03-18T03:35:53.024Z (over 1 year ago)
- Topics: cms
- Language: PHP
- Homepage:
- Size: 18.6 MB
- Stars: 3
- Watchers: 3
- Forks: 3
- Open Issues: 12
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# AGcms
[](https://github.com/AJenbo/agcms/actions/workflows/test.yml)
[](https://www.codacy.com/gh/AJenbo/agcms/dashboard?utm_source=github.com&utm_medium=referral&utm_content=AJenbo/agcms&utm_campaign=Badge_Grade)
[](https://codeclimate.com/github/AJenbo/agcms/maintainability)
[](https://codebeat.co/projects/github-com-ajenbo-agcms-master)
[](https://codecov.io/gh/AJenbo/agcms)
AGcms is a simple CMS that I built around 2004, since it still has active users, I try to maintain the code base and use it to experiment with differnet tools. The maintenance mostly revolve around keeping the backend in decent shape, code wise.
## Development setup
### PHP
The PHP source is found in application/inc
It's structured to be similar to [Laravel](https://laravel.com/)
### JavaScript
The JavaScript source is found in source/javascript
It's transpiled using webpack, meaning you can write ES6 and having it still work on older browsers that only support ES5
### Prerequisites
- [Composer](https://getcomposer.org/doc/00-intro.md)
- [Docker Compose](https://docs.docker.com/get-docker/)
- [NodeJS](https://nodejs.org/en/download/package-manager/)
- [PHP](https://www.php.net/manual/en/install.php)
It's recommended to follow the install guides for each prerequisite linked above
`build.sh` also depends on wget and unzip
### Install dependencies
Executing `build.sh` will install the project dependencies, except for php development dependencies
#### Install development dependencies
Run the following three commands if you would like to install all dependencies
```bash
./build.sh
cd application
composer install
```
### Running the project
The project comes with a docker-compose.yml that will run an nginx server on port 80 and MySQL on 3306 by default
To start it simply run:
```bash
docker compose up -d
```
If you want to setup a server manually you need to point it to the application folder, you will find the needed sql files for the database in the source folder.
### Running tests
You can run the PHP unit tests via the following command from the project root
```bash
php application/vendor/bin/phpunit
```
## Preparing a release
Run the `build.sh` script
Upload the content of the application folder to your webserver
## Security Vulnerabilities
If you discover a security vulnerability within AGcms, please create an issue on [github](https://github.com/AJenbo/agcms/issues)
All security vulnerabilities will be promptly addressed
## License
AGcms is open-sourced software licensed under the [GPL-2.0 license](https://opensource.org/licenses/GPL-2.0)
As such you are free to base your site on it
If you decide to do so I would love to hear about it :)