mostly filebased Content Presentation System
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Dominik Schmidt-Philipp 0ba8bbbc5e hardcoded change: enclose equal types of content elements 1 天之前
app hardcoded change: enclose equal types of content elements 1 天之前
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 fix deprecated access to GET variable 1 天之前
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