mostly filebased Content Presentation System
選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。
dom aab52bdd71 more explanation in README.md 2年前
app design of shop and publication elements 2年前
doc update to latest version, developed outside git 3年前
rsc remove favicons from gitindex 2年前
.gitignore make it possible to reference own templates in main.cfg 3年前
.gitmodules properly added featherlight and detect swipe as submodules 3年前
.htaccess copy from a local branch (initial commit) 5年前
.rsyncignore more sync ignores 3年前
README.md more explanation in README.md 2年前
composer.json fix: parsedown-extra dependency, typo in email.php width attribute in CEimage 3年前
deploy.sample update deploy script 3年前
emptycache.php add emptychache.php 4年前
index.php work on admin area 2年前
main.cfg.sample make it possible to reference own templates in main.cfg 3年前
routes.cfg add a simple webshop solution 3年前

README.md

freaCMS

mostly filebased Content Presentation System

this software evolves as it is being used. There might go some time before new features are added or bugs are fixed. If you find a bug or trouble getting things working, don’t hestitate to get in contact or file a bug report (Issues tab).

installation

these instructions are tested on GNU/Linux operating system, but should be general enough to work on any UNIX-like computer on a bash terminal. Linux and Mac users should be fine, I have never tried out a installation workflow on Windows. It most certainly works. If you try, let me know how it goes.

download

get the source code

git clone https://git.freakaria.com/dom/freaCMS.git
cd freaCMS

If you don’t have git installed, just download the archive as zip archive, unzip and chang into directory. Or simply get git, than you have version control :)

install dependencies

composer install

composer is a packagemanager for PHP. freaCMS uses the microframework FatFreeFramework for some basic app-logic and parsedown-extra as Markdown parser.

install example content

tar zxf rsc/example_content.tar.gz

have a look inside the newly created content folder to see how content is stored.

configure

create and edit main.cfg and deploy:

for i in {deploy,main.cfg}; do cp $i.sample $i; done;

main.cgf:

SITE_URL = public URL where website is reachable (used in links, etc...)
title = give your site a title

deploy:

USER = ssh user on server
SERVER = server address for ssh login
LIVE_DIR = relative path (from ssh login) to live site
DEV_DIR = relative path to development site (so you can try out without breaking stuff)

the deploy script automates synchronisation between your local copy and a directory on the server using rsync. You need to have ssh installed for this to work. It is very basic and might be adapted to your particular needs if you know what you are doing.

If SSH is foreign to you, just ignore it and use your preferred way to transfer files to a server, like e.g. FTP.

test

if you have PHP installed locally, you can test whether all i working as it should by launching the builtin webserver:

php -S localhost:12345

point browser to localhost:12345

upload

using the deploy shell script

./deploy dev go
./deploy dev content up go

Template variables

LANG default_lang RESOURCES hideFromSearchEngines title bodyClass