generated from SeaCMS/modele-depot
120 lines
3.3 KiB
Markdown
120 lines
3.3 KiB
Markdown
# Documentation for developpers
|
|
|
|
This package is the the main SeaCMS package.
|
|
|
|
## Installation
|
|
|
|
- install [`git`](https://git-scm.com/downloads)
|
|
- install [`composer`](https://getcomposer.org/download/)
|
|
- clone repository
|
|
```bash
|
|
git clone https://git.accolades.coop/SeaCMS/seacms.git seacms
|
|
```
|
|
- choose the folder name by replacing `seacms` in the command line by the wanted path
|
|
or (equivalent to `git clone`)
|
|
```bash
|
|
mkdir seacms
|
|
cd seacms
|
|
git init
|
|
git remote add origin https://git.accolades.coop/SeaCMS/seacms.git
|
|
git fetch --all
|
|
git checkout master
|
|
```
|
|
- then start `composer install`
|
|
|
|
### If you want use one dependency in local
|
|
|
|
- create the file `main-config.json` in root folder
|
|
- keep on branch `master`
|
|
- put this This will use symlink to these folders only if existing
|
|
```
|
|
{
|
|
"local-repositories": {
|
|
"composer-plugin": "seacms/composer-plugin",
|
|
"pico-content-editor": "seacms/pico-content-editor",
|
|
"seacms-app": "seacms/seacms-app",
|
|
"seacms-api": "seacms/seacms-api",
|
|
"seacms-auth": "seacms/seacms-auth",
|
|
"seacms-theme": "seacms/seacms-theme"
|
|
}
|
|
}
|
|
```
|
|
- type `composer update` in command line
|
|
- be careful not to push `composer.lock` to main repo if you don't know what you are doing
|
|
|
|
If trouble during `composer update`, you can:
|
|
1. clear cache `composer cc`
|
|
2. delete folder `vendor` before `composer update`
|
|
|
|
## TODO
|
|
|
|
- [ ] set contact addresses into `CODE_OF_CONDUCT.md` files
|
|
- [ ] update `composer.json` file as described below
|
|
- [ ] create a `SUPPORT.md` file at the root
|
|
- [ ] update content of `.github/CONTRIBUTING.md`
|
|
- [ ] check content of `.github/PULL_REQUEST_TEMPLATE.md`
|
|
- [ ] update docs (French + English) for installation
|
|
|
|
## `composer.json` file
|
|
|
|
This files needs to be updated.
|
|
Currently, it uses `"minimum-stability": "dev",` to allow usage of `alpha` revisions of packages.
|
|
|
|
### TODO
|
|
|
|
add these fields :
|
|
|
|
```json
|
|
"name": "TODO To be defined",
|
|
"description": "TODO to complete",
|
|
"homepage": "TODO To set",
|
|
"authors": [
|
|
{
|
|
"name": "xxx",
|
|
"email": "TODO complete",
|
|
"homepage": "TODO complete",
|
|
"role": "Developer"
|
|
},
|
|
{
|
|
"name": "xxx",
|
|
"email": "TODO complete",
|
|
"homepage": "TODO complete",
|
|
"role": "Developer"
|
|
},
|
|
],
|
|
"support": {
|
|
"email": "support@example.org",
|
|
"issues": "url",
|
|
"source": "url",
|
|
"docs": "url",
|
|
"chat": "url",
|
|
"rss": "url",
|
|
},
|
|
"funding": [
|
|
{
|
|
"type": "patreon",
|
|
"url": "https://www.patreon.com/phpdoctrine"
|
|
},
|
|
{
|
|
"type": "tidelift",
|
|
"url": "https://tidelift.com/subscription/pkg/packagist-doctrine_doctrine-bundle"
|
|
},
|
|
{
|
|
"type": "other",
|
|
"url": "https://www.doctrine-project.org/sponsorship.html"
|
|
}
|
|
]
|
|
```
|
|
|
|
## `.github` folder
|
|
|
|
It was choosen to name the folder as `.github` to allow compatibility for forks on GitHUb even if the folder could be named `.gitea`.
|
|
|
|
## reserved folders' name
|
|
|
|
- `vendor` for composer
|
|
- `node_modules` for `npm` and `yarn`
|
|
- `archives` for archives' creation
|
|
- `sites` for subsites on a farm
|
|
- `public` for assets `public/img` `public/js` `public/css` , ....
|
|
- `p` for main content path |