commit 4e8c4f813836ed2b029fafc4f3565e1f690181c8
parent e7a262ba670dc717188d11467b8bbc2d227f619f
Author: dankert <openrat@jandankert.de>
Date: Sun, 5 Dec 2021 02:03:27 +0100
Added some documentation.
Diffstat:
9 files changed, 48 insertions(+), 25 deletions(-)
diff --git a/README.md b/README.md
@@ -5,11 +5,11 @@
## About
-OpenRat is a statifying CMS.
+OpenRat is a statifying CMS, also known as a [static site generator](https://en.wikipedia.org/wiki/Web_template_system#Static_site_generators).
OpenRat generates static files, which are served by a dedicated live web server like Apache, Nginx, Boa etc.
-Unlike popular static site generators like Jekyll, JBake etc. OpenRat CMS contains a complete Web UI with user management.
+Unlike other static site generators OpenRat CMS contains a complete Web UI with user management.
### Why OpenRat?
@@ -22,7 +22,7 @@ Yes, there are a lot of good CMS in the world, and a lot of them are available f
### Requirements
-You need a server with PHP >= 5.5 and a relational database.
+You need a server with PHP >= 5.6 and a relational database.
MariaDB and MySQL are recommended, while PostgresQL and SQLite are supported too.
@@ -31,7 +31,7 @@ MariaDB and MySQL are recommended, while PostgresQL and SQLite are supported too
#### Docker-Compose
-The easiest way is to start the content-management-system inside a docker machine.
+The easiest way is to start the content-management-system inside a docker machine with an MySql database.
Copy the following lines to a file named `docker-compose.yml`.
```
@@ -72,16 +72,16 @@ services:
Start the environment with `docker-compose up -d`.
-Now the CMS is available on http://localhost:8000
-The published website is available on http://localhost:8001
+Now the CMS is available on [localhost:8000](http://localhost:8000).
+The published website is available on [localhost:8001](http://localhost:8001)
-#### Run the docker container
+#### Start the single CMS docker container
-Download and run the docker image from [Dockerhub](https://hub.docker.com/r/openrat/openrat-cms):
+Download and run the docker image from [Dockerhub](https://hub.docker.com/r/openrat/openrat-cms), you need an already running database.
`docker run -d -p 8080:8080 -e DB_HOST=$host -e DB_NAME=$name -e DB_USER=$user -e DB_PASS=$pass openrat/openrat-cms`
-Be sure to replace the variables. You need a database to use this way.
+Be sure to replace the variables.
#### Environment variables for Docker
@@ -101,13 +101,11 @@ The following environment variables could be set in the docker container:
### Local installation
-Of course the old style local installation is possible with the following steps.
+The old style local installation is possible with the following steps.
#### Download and untar it
-Download the last release from Github and install it on your server:
-
-https://github.com/dankert/openrat-cms/releases
+Download the [latest release](https://github.com/dankert/openrat-cms/releases) from Github and install it on your server.
#### Clone GIT repository
diff --git a/api/README.md b/api/README.md
@@ -0,0 +1,13 @@
+# API
+
+Every action in the CMS is callable via the API.
+
+Every API call must contain the query parameters `action` and `subaction`.
+
+The response is formatted as the client requested
+- JSON
+- XML
+- YAML
+- Serialized PHP-Array
+
+The client may send a request header `Accept-Typpe` or the query parameter `output` with the pleasant output type.
+\ No newline at end of file
diff --git a/api/web/README.md b/api/web/README.md
@@ -0,0 +1,4 @@
+# Web API
+
+Invoking the [CMS API](./index.php) with your browser.
+
diff --git a/client/java/README.md b/client/java/README.md
@@ -1,5 +1,5 @@
# Java client side implementation
-Java client for accessing the API is now available in a separate project.
+The CMS API is callable in a program language independent way.
-See [openrat-java-client](http://code.weiherhei.de/openrat-java-client/log.html).
+A Java client for accessing the API is now available in a separate project, see [openrat-java-client](http://code.weiherhei.de/openrat-java-client/log.html).
diff --git a/dev-helper/README.md b/dev-helper/README.md
@@ -4,7 +4,7 @@ These files are only necessary **for developers**!
## Creating a release tag
-`tag-version.sh <version>`
+Usage: `tag-version.sh <version>`
- updates the file `version.php` with the new version
- creates a git tag
@@ -21,4 +21,4 @@ Makes the necessary output files writable, then updates them.
- `-w` do not exit, **watch**es the files for modifications
- `-x <type>` where `type` is one of `tpl`,`lang`,`js`,`css`,`xsd` or `all`.
-You can to the same while [invoking the update via your browser](./update.php).
-\ No newline at end of file
+You can to the same with [invoking the update via your browser](./update.php).
+\ No newline at end of file
diff --git a/doc/images/screenshot-overall.png b/doc/images/screenshot-overall.png
Binary files differ.
diff --git a/modules/cms/auth/README.md b/modules/cms/auth/README.md
@@ -2,7 +2,7 @@
These authentication backends are used for user identification and authentication.
-Every Authentication must implement [Auth](Auth.class.php) and must provide the 2 methods
+Every Authentication must implement [the Auth interface](Auth.class.php) and must provide the 2 methods
1. `login()` must do an authentification. On successful logins, it should return `Auth::STATUS_SUCCESS`, otherwise this method must return `Auth::STATUS_FAILED`.
1. `username()` may find out the username of the user which want to log in. If this is not possible, this method must return `null`.
\ No newline at end of file
diff --git a/modules/cms/generator/filter/README.md b/modules/cms/generator/filter/README.md
@@ -2,6 +2,11 @@
Filters are executed by the CMS after generating a node object.
+
+## Implementation
+
+Every filter must extend the class [AbstractFilter](AbstractFilter.class.php).
+
## Example
A script file is generated and before publishing it should be minified. This is done by the JavascriptMinifierFilter.
\ No newline at end of file
diff --git a/modules/cms/generator/target/README.md b/modules/cms/generator/target/README.md
@@ -8,14 +8,16 @@ Possible publishing targets are
- WebDAV
- SCP
- SFTP
+- S3 (Amazon S3 Storage)
The corresponding scheme names are
-- `file`
-- `ftp`
-- `ftps`
-- `dav`
-- `scp`
-- `sftp`
+- `file`: Local filesystem
+- `ftp`: FTP
+- `ftps`: FTPS (FTP over SSL)
+- `dav`: WebDAV
+- `scp`: Secure copy (SCP)
+- `sftp`: SFTP
+- `s3`: Amazon S3 Storage
The target is selected by the scheme in the target url in the project properties.