Mirror

Vova Tkach f112d2d62d Release++ 6 years ago
assets f9299cf119 The same red color 6 years ago
consts f112d2d62d Release++ 6 years ago
database cf2e5d522c Add unique key for users table 6 years ago
engine 2f1c774d65 Red delete icon in data table 6 years ago
hosts a162c01c47 CMS version to template vars 6 years ago
logger a18ab27e0b Write logs to localhost folder if host not found 6 years ago
modules 0a5b23014f Rename error message 6 years ago
testdata ae82467000 Independed file for tests 6 years ago
utils a162c01c47 CMS version to template vars 6 years ago
vendor 2727683716 Update bootstrap module 6 years ago
.gitignore 7838ab4173 Optimization 6 years ago
Dockerfile f112d2d62d Release++ 6 years ago
LICENSE c391c57bd1 Update LICENSE 6 years ago
Makefile f112d2d62d Release++ 6 years ago
README.md f1ff3c7e5d Update README.md 6 years ago
go.mod 2727683716 Update bootstrap module 6 years ago
go.sum 2727683716 Update bootstrap module 6 years ago
main.go 943c9f9b45 Theme scripts file 6 years ago
run.mac.sh 5e34f843f1 Dockerfile, script fixes, bootstrap upgrade 6 years ago
run.unix.sh 5e34f843f1 Dockerfile, script fixes, bootstrap upgrade 6 years ago
run.windows.bat 5e34f843f1 Dockerfile, script fixes, bootstrap upgrade 6 years ago
session.go ac8d29ccb7 Session graceful shutdown 6 years ago

README.md

golang-fave

CMS written on Go with MySQL as database. Dynamical, splitted by modules, user friendly and thanks bootstrap is fully adaptive for mobile devices and tablets. Thanks Go language it's fastern, all in one binary file, no need to install additional web servers. Go native template with vars allow to do almost all what are need.

Usage

Usage of ./fave:
  -debug
    debug mode with ignoring log files
  -dir string
    virtual hosts directory
  -host string
    server host (default "0.0.0.0")
  -keepalive
    enable/disable server keep alive
  -port int
    server port (default 8080)

Hosts structure

hosts
├── localhost              # Main host directory
├──── config               # Config directory
├────── mysql.json         # MySQL config file
├──── htdocs               # Public http files
├──── logs                 # Logs dir
├────── access.log         # Access log file
├────── error.log          # Error log file
├──── template             # Engine templates
├────── 404.html           # Template for 404 page
├────── footer.html        # Footer
├────── header.html        # Header
├────── index.html         # Template for index page
├────── page.html          # Template for any other pages
├────── robots.txt         # Host robots.txt file
├────── scripts.js         # Theme scripts file
├────── sidebar-left.html  # Can be included in templates
├────── sidebar-right.html # Can be included in templates
├────── styles.css         # Theme styles file
└──── tmp                  # Temporary dir for session files

Unlimited hosts count. Template variables in Wiki or here and here.

Development

  • make - vet, test, build and run in debug mode locally
  • make build - build release for Linux, Mac OS X and Windows
  • make format - format all code by gofmt utility
  • make update - get all dependencies and put to vendor folder
  • make docker-test - build image and start on port 8080
  • make docker-img - build docker image only