All Projects → imjoehaines → sihae

imjoehaines / sihae

Licence: Unlicense license
A PHP 7.4+ blog engine built with Slim Framework and Doctrine ORM

Programming Languages

PHP
23972 projects - #3 most used programming language
Gherkin
971 projects
HTML
75241 projects
CSS
56736 projects

Projects that are alternatives of or similar to sihae

Flog
A Simple Blog Powered by Flask
Stars: ✭ 150 (+733.33%)
Mutual labels:  blog-engine
Lines Engine
Lines is a customizable blog framework for Rails. It aims at making publishing simple and beautiful.
Stars: ✭ 191 (+961.11%)
Mutual labels:  blog-engine
Lazyblorg
Blogging with Org-mode for very lazy people
Stars: ✭ 226 (+1155.56%)
Mutual labels:  blog-engine
Netcorecms
NetCoreCMS is a modular theme supported Content Management System developed using ASP.Net Core 2.0 MVC. Which is also usable as web application framework. This project is still under development. Please do not use before it's first release.
Stars: ✭ 165 (+816.67%)
Mutual labels:  blog-engine
Mvcblog
Blog engine based on ASP.NET Core 5 and Twitter Bootstrap 4
Stars: ✭ 184 (+922.22%)
Mutual labels:  blog-engine
Blogetc
Easily add a full Laravel blog (with built in admin panel and public views) to your laravel project with this simple package.
Stars: ✭ 198 (+1000%)
Mutual labels:  blog-engine
Sciblog
A blog made with django designed like a scientific paper written in Latex.
Stars: ✭ 145 (+705.56%)
Mutual labels:  blog-engine
Hugo
The world’s fastest framework for building websites.
Stars: ✭ 55,899 (+310450%)
Mutual labels:  blog-engine
Elefant
Elefant, the refreshingly simple PHP CMS and web framework.
Stars: ✭ 188 (+944.44%)
Mutual labels:  blog-engine
Textpress
Simple flat-file blog engine in PHP
Stars: ✭ 207 (+1050%)
Mutual labels:  blog-engine
Blog
Minimalist database less blog engine
Stars: ✭ 174 (+866.67%)
Mutual labels:  blog-engine
Articulate
A wonderful Blog engine built on Umbraco
Stars: ✭ 178 (+888.89%)
Mutual labels:  blog-engine
Slimcms
SlimCMS - lightweight CMS based on slim 3 framework
Stars: ✭ 201 (+1016.67%)
Mutual labels:  blog-engine
Serendipity
A PHP blog software
Stars: ✭ 151 (+738.89%)
Mutual labels:  blog-engine
Gistlog
GistLog - simple, easy blogging based on GitHub gists
Stars: ✭ 237 (+1216.67%)
Mutual labels:  blog-engine
Blog
My Blog & Blog System
Stars: ✭ 148 (+722.22%)
Mutual labels:  blog-engine
Textcube
Textcube : Brand yourself! / Personalized web publishing platform with multi-user support
Stars: ✭ 196 (+988.89%)
Mutual labels:  blog-engine
slim3-mvc
Slim 3 PHP micro framework MVC application boilerplate
Stars: ✭ 24 (+33.33%)
Mutual labels:  slim-framework
Dasblog Core
The original DasBlog reimagined with ASP.NET Core
Stars: ✭ 252 (+1300%)
Mutual labels:  blog-engine
Solo
🎸 一款小而美的博客系统,专为程序员设计。
Stars: ✭ 13,245 (+73483.33%)
Mutual labels:  blog-engine

Sihae GitHub Actions status

Sihae is a PHP 7.4+ blog engine built with Slim Framework and Doctrine ORM.

Sihae home page

Features

  • Publish blog posts
  • Markdown formatting (CommonMark via league/commonmark)
  • Syntax highlighting (via Prism.js)
  • Tag posts and explore all posts by their tag(s)
  • Archive list of all posts grouped by year

Requirements

  • PHP 7.4+
  • MySQL or SQLite

Setup

$ composer install
$ cp .env.example .env
# configure .env with database connection details
# create a database matching the "DB_NAME" in your .env
$ php vendor/bin/doctrine-migrations migrations:migrate

Deploying

$ git fetch
$ git rebase
$ composer install --no-dev --no-suggest --optimize-autoloader
$ php vendor/bin/doctrine-migrations migrations:migrate
$ rm data/cache/router.php

Configuration

All configuration is done in the .env file at the root of the project. It contains the following options:

  • DB_DRIVER — choose which database to use, possible options are:
    • pdo_mysql to use MySQL
    • pdo_sqlite to use SQLite
  • DB_PATH — the path to store the database; this must be an absolute path! This is only required if DB_DRIVER is set to pdo_sqlite.
  • DB_HOST — the host to connect to the database on. This is only required if DB_DRIVER is set to pdo_mysql
  • DB_PORT — the port to use when connecting to the database host. This is only used if DB_DRIVER is set to pdo_mysql and the default MySQL port (3306) will be used if this is omitted
  • DB_NAME — the name of the database to use. This is only required if DB_DRIVER is set to pdo_mysql
  • DB_USER — the user to connect to the database with. This is only required if DB_DRIVER is set to pdo_mysql
  • DB_PASSWORD — the password to use for the DB_USER. This is only required if DB_DRIVER is set to pdo_mysql
  • APPLICATION_ENV — the environment the application is running in. Locally this should be development and should be production when deployed
  • SIHAE_TITLE — the title of your blog
  • SIHAE_SUMMARY — the summary (line below the title) of your blog
  • ENABLE_REGISTRATION — whether to allow users to be registered. This should be turned off after the you have registered your initial user

Custom Themes

Creating a custom theme is super easy; Sihae will try to load template files from templates/theme before falling back to the root of templates. This means you can replace any template by creating a file with the same name inside templates/theme. For example, you can create a custom 404 page by creating templates/theme/404.phtml.

The templates/theme directory is ignored by git in the Sihae repository so it won't be overwritten in future versions.

Be sure to read the Plates documentation for details on how to create templates.

If you need to include images, CSS or JavaScript in your theme, there is a public/theme directory to store any assets your theme requires. This is also ignored by git.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].