Bloging with HTML5
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
classes
components
config
demos
fonts @ b00edf1
gpg
images
logs
scripts
std-php-functions @ 81220b3
stylesheets
.babelrc
.eslintrc
.gitattributes
.gitignore
.gitmodules
.htaccess
.travis.yml
CSP_Errors.php
LICENSE.txt
README.md
ajax.php
api.php
code_standards.md
combined.svg
composer.json
composer.lock
custom.php
default.sql
favicon.ico
favicon.png
favicon.svg
favicon.svgz
gist.php
index.php
manifest.appcache
manifest.webapp
opensearch.php
package.json
robots.txt
searchsuggestions.php
super-user.png
super-user.psd
super-user.svg
super-user.svgz
super-user.xcf
unit.php
webhook.php

README.md

Super User Build Status Join the chat at https://gitter.im/shgysk8zer0/chriszuber

The world of blogging in the HTML5 world.

The aim of this project is to provide the best in HTML5, CSS3, JavaScript, and SVG with minimal effort, providing support for new elements such as <dialog> & <details> where required. Create a very fast, very SEO friendly blog without worrying about plugins, extensions, etc. Designed to be easy enough to use without knowledge of coding (Like a Word document), but without sacrificing the power and control that developers want.

Features

  • Attribute-centric Programming: allows you to focus on the markup and content rather than JavaScript or CSS. Content authors can do their work without being required to to worry about things that are a developer's or designer's job. Knowledge of HTML and a few attributes may be helpful, but are not required.
  • Full AJAX navigation, with history. Navigation is almost instant and no reloading required. The page can be updated in an infinite number of ways, but only the updates are sent in responses. Back/forward buttons navigate as usual.
  • Responsive Design - Default CSS uses flexbox and viewport units. The page will resize and adjust according to the size it is given to be displayed in.
  • Feature Detection - Detect for support in CSS using @supports as well as in JavaScript + classes.
  • json_response class dedicated to making responses to AJAX request both powerful and easy to write.
  • Security on both client and server end using Content-Security-Policy and PDO prepared statements (no SQL injection) among many other security features
  • WYSIWYG editor - little or not HTML/CSS knowledge required for authors. Drag-'n-Drop images (currently as data-uri).
  • Designed for "modern browsers" - while this does mean limited support of Internet Explorer, it allows for a much better experience for most of the rest of users. Polyfills and fallbacks are in the works, but the aim of this is to provide the best of what the web has to offer, and that unfortunately excludes some outdated browsers.
  • SEO built in using microdata - search engines will know what to do with different sections of a page because it is explicity told what the title of the article is, who wrote it, when it was written, who commented on it, etc. Example here
  • Templates are easy to write and use - just write some regular HTML and put your placeholders in caps surrounded by "%"s.
  • Most class methods are chainable - faster and easier coding
  • Updating design made easy thanks to CSS variables. Use Myth (not included) when unsupported or in production
  • Developer friendly - Things like backing up and restoring a database are as easy as clicking a button in the developer menu, which is available to admin users everywhere via contextmenu (no navigation required, Firefox only at this point). Also provides easy access to debugging info, and the ability to print out debugging info to the browser's console makes tracking down bugs relatively easy. Lastly, PHP errors are saved to a database with file, line, and error message included, and can be searched, filtered, and even fixed from the browser!
  • Free/Libre/Open/Creative Commons/Public Domain… whatever applies to what you're referring to. All artwork, icons, and code are free to use for personal use. Special thanks to OpenClipart and Open Font Library. All posts are automatically licensed under a Creative Commons 4.0 license.

Contact

Forks

Install

git clone git://github.com/shgysk8zer0/chriszuber.git {path}
cd {path}
git submodule init
git submodule update

Update

git pull
git submodule update

In case of update conflicts

git mergetool

Creating your Repo

Update addresses to SSH as needed and available

First, fork from the Main Repository

Copy your "clone URL"

Install

git clone {clone URL}
git remote add upstream git://github.com/shgysk8zer0/chriszuber.git

Update

git pull upstream master
git submodule update

Other Info

Tested Using:

Required PHP Modules:

Required Apache Modules:

Recommended for CSS editing

Uses CSS-variables (currently Firefox 31+ only) in default stylesheet. The Node.js plugin Myth creates fully vendor-prefixed CSS from the default CSS, replaces variables with their values, as well as combining CSS files using @import while still allowing the original to be used as CSS where supported

Installation and configurations for Ubuntu

sudo add-apt-repository ppa:richarvey/nodejs
sudo apt-get install nodejs npm
sudo ln -s /usr/bin/nodejs /usr/bin/node
sudo npm install -g myth

Then to generate...

myth -c stylesheets/default/combined.css stylesheets/default/output.css

Required Browser Features:

These features only found in current versions of Firefox and Chrome

HTML5

JavaScript

CSS