1
0
Fork 0
A simple PHP blogging platform
Go to file
sloum 0a5e9e7152 More gitignore fudging 2023-12-21 09:27:04 -08:00
css Adds more css options 2023-12-20 20:40:05 -08:00
.gitignore More gitignore fudging 2023-12-21 09:27:04 -08:00
404.php Initial commit 2023-12-19 15:55:46 -08:00
README.md Mostly updates readme and fixes css tips for simple css on edit page 2023-12-20 22:58:07 -08:00
admin-bar-partial.php Initial commit 2023-12-19 15:55:46 -08:00
admin.php Fixes issues with updating simplecss. TODO fix SIMPLE_CSS reference in edit to conditionally show help box 2023-12-20 21:00:08 -08:00
backend-header.php Initial commit 2023-12-19 15:55:46 -08:00
blog_log.php Changes login mechanism to protect the hash from view by storing it in a php file and gatekeeping that file 2023-12-21 09:22:36 -08:00
chickadee.svg Wide ranging updates to most areas of the system 2023-12-20 15:54:57 -08:00
common.php Adds support for custom date formatting and whether or not to show the date on the index page 2023-12-20 16:18:53 -08:00
config.php Mostly updates readme and fixes css tips for simple css on edit page 2023-12-20 22:58:07 -08:00
delete_data.php Wide ranging updates to most areas of the system 2023-12-20 15:54:57 -08:00
edit.php Mostly updates readme and fixes css tips for simple css on edit page 2023-12-20 22:58:07 -08:00
index.php Fixes issues with updating simplecss. TODO fix SIMPLE_CSS reference in edit to conditionally show help box 2023-12-20 21:00:08 -08:00
logcheck.php Wide ranging updates to most areas of the system 2023-12-20 15:54:57 -08:00
logout.php Initial commit 2023-12-19 15:55:46 -08:00
new-post.php Initial commit 2023-12-19 15:55:46 -08:00
parsedown.php Initial commit 2023-12-19 15:55:46 -08:00
pass_hash.php More gitignore fudging 2023-12-21 09:27:04 -08:00
post.php Fixes issues with updating simplecss. TODO fix SIMPLE_CSS reference in edit to conditionally show help box 2023-12-20 21:00:08 -08:00
site_actions.php Fixes issues with updating simplecss. TODO fix SIMPLE_CSS reference in edit to conditionally show help box 2023-12-20 21:00:08 -08:00
upload.php Changes login mechanism to protect the hash from view by storing it in a php file and gatekeeping that file 2023-12-21 09:22:36 -08:00

README.md

chickadee

A small php-based blog-system/cms that uses markdown (which also supports regular html markup) for post editing and a flat file system rather than a database. It is a single user system and, by design, does not support comments, social boost widgets, or other cruft. Just simple blogging and very basic media management. No javascript is used and there is no tracking.

Who is this for?

Likely just me and a few friends. That said, anyone wanting a simple and lightweight blog system for their website that just uses basic html and css with no javascript might enjoy it.

Current Capabilities

  • Login (username/password)
    • Login: /blog.log.php
  • Admin area: /admin.php
    • Post Actions
      • Create (markdown is a first class citizen)
      • Delete
      • Edit
    • Media Actions
      • Upload images/documents
      • Delete images/documents
    • Site Actions
      • Enable/Disable integrated simple.css css theme
      • Editable custom css
        • If simple.css is enabled, the css edit page will also show a guide for modifying the variables that simple.css has set up
  • Post Index (index.php)
    • Shows list of posts
    • Customizable top blurb
    • Customizable bottom blurb
    • Site header
    • Site footer
  • Individual Post
    • Post body (rendered from markdown)
    • Site header
    • Site footer
  • Behavioral Customization (config.php)
    • SITE_NAME, shown in site header and elsewhere
    • TOP_BLURB, custom html that appears above post listing on index.php
    • FOOT_BLURB, custom html that appears below post listing on index.php
    • SITE_HEADER, custom html to override default site header
    • SITE_FOOTER, custom html to override default site footer
    • SITE_LANG, language declaration for blog content (default is en)
    • SHOW_DATES, turn on or off dates next to post titles
    • DATE_STYLE, php date format string for how dates should display
    • SIMPLE_CSS, turn on or off including of simple.css (can also be adjusted in the admin screen: /admin.php)

Installation and usage

chickadee requires php and a php capable web server (we use apache2, but whatever floats your boat and also runs php should be fine). There are no other requirements. chickadee is a flat file blog system and no database is required.

To install on your web server, go to where you want the blog installed and clone the repository as whatever you want the directory called. This may look something like the following:

cd /var/www/
git clone https://tildegit.org/sloum/chickadee myawesomeblog
cd myawesomeblog
vim config.php

Certainly replace myawesomeblog with the name of your folder. This may be blog if integrating into an existing site, or may be the name of the website. While I use vim, use whatever you like to edit config.php. It is a well commented file and should direct you to some good defaults for your use case.

Lastly, you need to set up your login information. This is easy, so long as your server is now exposing the paths and you can access the site: go to /blog_log.php. Enter a username and password of your choosing. Once you do so, you should see the admin area. The username and password you entered are now your username and password (the first ones entered are the ones used). If you ever need to reset your username/password you can go to the web root for the blog on your server and delete the file blog_pass_hash.txt. This will reset the password without deleting any other data. You can then set a new one by going to the login page and entering new credentials.

Cookies are required to use the system, but only one cookie is ever set and no tracking or phoning home are done. When you log in the system will keep you logged in for 30 days unless you explicitly log out (or clear your cookies). If you aren't on your own machine and want to log in we recommend a private browsing window/tab that will clear the cookies automatically when closed.