capile / studio
Studio CMS: open data management
Requires
- php: >=7.3
- ext-mbstring: *
- bshaffer/oauth2-server-php: ^1.11
- capile/tecnodesign: ^3.0.2
- erusev/parsedown: 1.7.*
- foxy/foxy: ^1.1.0
- jumbojett/openid-connect-php: ^0.9.2
- mustangostang/spyc: ^0.6.2
- phpmailer/phpmailer: ^6.7.1
- phpoffice/phpspreadsheet: ^1.6.0
Requires (Dev)
Suggests
- ext-dom: *
- ext-yaml: Use YAML processing natively
- dapphp/securimage: Enables the captcha form field type
- geshi/geshi: Allows syntax highlight in markdown text
- setasign/fpdi: Allows PDF parsing and composition
- tecnickcom/tcpdf: Allows PDF parsing and composition
README
Studio is a multi-purpose data management tool, designed to work as an API provider, CMS or application framework. The main objective is to build an open source easy to use application to build web apps or consume and analyze data.
Ready to start? You'll need:
- PHP version 7.3+
- Composer
- Git
If you already have them, just type:
git clone https://github.com/capile/studio.git studio
cd studio && composer install
./studio :start
Docker images
Different purpose Docker images are available at <data/docker>, compatible with latest PHP/nodejs version or to PHP7. Images prefixed with dev-
enable root access and some additional command-line tools.
You can start using it directly with:
docker run --rm -v studio-data:/data -p 9999:9999 tecnodesign/studio-app:alpine-latest
Running Docker with source code
If you'd like to work with studio code and repository, you can mount the source repository (remember to fix permissions to user www-data
):
git clone https://github.com/capile/studio.git studio
cd studio
docker run --rm -u $UID -e HOME=/tmp -v $PWD:/var/www/app tecnodesign/studio-app:latest composer install
find app.yml data/{cache,web*,config} -type f -uid $UID -print0 | xargs -0 chmod 666
find data/{cache,web*,config} -type d -uid $UID -print0 | xargs -0 chmod 777
docker run --rm -v studio-data:/data -v $PWD:/var/www/app -p 9999:9999 tecnodesign/studio-app:alpine-latest
Or using docker-compose:
git clone https://github.com/capile/studio.git studio
cd studio
docker-compose -f data/docker/docker-compose.yml up
Running with local source code might require a filesystem check for the writable condition of the container user, so you should either run docker with the -u $UID
option (might lead to some errors), or adjust the local permissions on the data/
folder:
find data/{cache,web*,config} -type f -uid $UID -print0 | xargs -0 chmod 666
find data/{cache,web*,config} -type d -uid $UID -print0 | xargs -0 chmod 777
Now access the demo studio on http://127.0.0.1:9999/_studio