Coder Social home page Coder Social logo

ciims's Introduction

CiiMS

Latest Version TravisCI Scrutinizer Code Quality Downloads Gittip License Yii

CiiMS Logo Banner

CiiMS is a fast, simple, and easy to use, full feature blogging platform and content management system built in Yii. CiiMS is, and will always be free to use and open-source.

News

CiiMS 2.0.2 Released

CiiMS 2.0.2 is now available. Checkout the release notes for more information.

Installation

CiiMS can be quickly installed through composer. For more information about installing CiiMS, checkout the installation guide.

composer create-project --prefer-dist --stability=dev charlesportwoodii/ciims {path} 2.0.2
cd {path}
composer dump-autoload -o

Benchmarks

How fast is CiiMS? In a post-installation comparison, using out of the box (non-debug) configurations over SSL, CiiMS outperforms Ghost, Wordpress, Bolt, and OctoberCMS in a 100 user, 10 minute siege test. CiiMS s nearly 30% faster than Ghost, and over 130% faster than Wordpress.

- DigitalOcean 512MB Box
- Ubuntu 14.04 x64 LTS
- Percona Server 5.6
- PHP 5.6.6
	- Zend Opcache 	
- Nginx 1.7.9
- Node 0.10.36

Performance Comparison

Screenshots

A beautiful default theme

Default Theme

A powerful dashboard with custom JavaScript cards

CiiMS Dashboard

Easily browse all content entries

Content List View

Powerful content editor

CiiMS Editor

Documentation

Full documents for CiiMS can be found at docs.ciims.io. Please refer to this guide for installation instructions, development guidelines, and a list of available CLI commands

Features

  • Based on Yii Framework
  • Installs in 30 seconds
  • Utilizes Composer
  • Beautiful Default Theme
  • Supports Markdown Extra
  • SEO Optimized (Sitemap XML, URL Slugs, SEO Meta Tags)
  • Password Protected Content
  • Site wide and Category Specific RSS Feeds
  • Multiple Content Type Support
  • Interchangeable Caching Systems (Redis, APC, Memcache, Files)
  • Low Memory Footprint
  • Themable
  • Social Integration (Social Signon, Social Sharing)
  • Extendable with custom modules, extensions, themes, and cards
  • Beautiful and functional dashboard for managing your content and settings.
  • i18n files provided for translations
  • Fully Customizable
  • Easily install new themes and cards from in a single click
  • And a bunch of other things!

Requirements

As modern blogging platform meant for the next 10 years of writing, CiiMS' requirements are high. To ensure you have all the necessary requirements, CiiMS has a dedicated requirements checker that will run after installing the necessary composer dependencies and will notify you of any missing dependencies.

The requirements checker can be run manually by running: php ./vendor/ciims/requirements/index.php

Recommendations

The following extensions/applications are recommended to improve performance.


Support

If you require support, submit a Github issue and I'll look into it as soon as I can.

How Can I Contribute?

We <3 Contributers!

  • Submit a detailed bug report
  • Implement a new feature
  • Fix a bug
  • Write additional unit & functional tests
  • Translate CiiMS into your favorite/local language
  • Create dashboard cards
  • Create themes

License

BSD-3--Clause. See LICENSE.md for more details.

ciims's People

Contributors

almix avatar charlesportwoodii avatar ferrancr avatar idexter avatar mtangoo avatar scrutinizer-auto-fixer avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ciims's Issues

Integrating in Existing Site

Hi,
How complex is, integrating with existing site? I mean in terms of ACL/RBAC (users table). I would like to know for Yii site and no Yii sites!

Best Regards,
Stefano

Support for default/basic conf file

I've realized that no default config/main.php file is provided.
If you want, I can add a default one in order to be able to have an "overriden" version of the file...
Something like:
config/common.php // A very basic conf file. Only updatable by you.
config/local.php // A .gitignore'd file. Optional where any user can set his custom configuration.
config/main.php // The magic script: Only updateable by you

Hope to be clear enough :)

Redactor Encoding with DOMDocument

I think there is some configuration that must be done to Redactor about HTML entities.
Writing in greek.
This is extract (OK)
5

and this is content (wriiten with the editor)
6

Cheers,
Petros

Theme Validator

CiiController should validate the existence of a theme before allowing it to be set. If the theme folder does not exist, the theme should default to 'default' to allow users to still browse the site and for admins to correct the error.

Menu Management

From Yii page -

Investigate methods for menu management system.

Should you setup a forum?

I hate to "pollute" this place with simple questions, maybe you should be setting up a forum somewhere(!).
Anyway, I move on with CiiMS and have a couple of questions :

  1. The image shows the site title. The ?????? are in greek. I am not able to find and try to amend it.
    1

  2. The second image shows the SEARCH and LATEST POSTS labels in greek. I found some css files and commented out text-transform: uppercase. This fixed it FOR A WHILE . Today uppercase has returned! (notice the undeeded in greek accents).
    2

I noticed CiiMS creates in assets randomly named folders with js and css files.
Anyway, the default theme in themes folder does not say the whole story (mind you, I want to touch just the front-end and leave the dashboard in english).
Thanks for the patience...

Petros

Can't install last version. Parse error in install.php

Intresting, just now I tried to install last revision but I have this error:

Parse error: syntax error, unexpected end of file in /private/var/www/ciims/install.php on line 749
But my IDE (NetBeans) don't show any errors and I don't see any errors in file too. I'm discouraged.

[Windows] view and layout datasource incorrect in content/save

I installed the ciims from the develop branch and everything works perfect until I created a new content from newly created category.

CDbCommand failed to execute the SQL statement: SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '2-layout' for key 'content_id_2'

The content entry to the database was successful.

when the view of the content is
content_post >>> the content was show but no layout is use. i aattache a screenshot for this
1

content\all >>> ContentController cannot find the requested view "content\all".
content\blog >>> ContentController cannot find the requested view "content\blog".
content\password >>> ContentController cannot find the requested view "content\password".

Theme Upgrades

Themes should provide the following information:

theme.json
{
    name : string,           // Name of the Package
    description: string,     // Description of the Package
    keywords: [],            // Searchable Keywords
    homepage: string,        // Homepage where user can get more information
    author: string,          // Author of the package
    version: string,         // Version of the package
    license: string,         // License
    repository : { type : "git", url : "github.com/user/package" },  // Where the package is located at
}

And they should provide a 150x150 png called default.png which is a screenshot of the image.

Additionally, the dashboard should support uploading of themes in addition to dropping the files there.

Dashboard View

in the admin panel when i click on the dashboard all i see is this renderFile($file); ?>

everything else works perfect.

Prevent content/categories from containing paths that match URLManager Route

Content & Categories admin allows for URL Routes to be created that match items in the config file (eg /admin, /login). The corresponding models should block this behavior and adjust the slug if it matches one of these pre-existing routes. When the route is created via the admin panel, it is added before the main route, causing a routing conflict in the cache resulting in a 404 error.

FIX PROPOSAL:

CiiModel::$blockedRoutes = array(
'admin',
'login'
[...]
)

Consolidate Email Sending Functionality

The email code is all the same and should be consolidated into one place for easier management. CiiController perhaps?

Couple of reasons why I want this back:

  1. I want users to be able to set their own no-reply address
  2. I don't want the admin user to be sending emails. The failure notices from bot attempts are annoying...
  3. It's weird having someone send emails on my behalf.

Additionally, the admin panel needs to be able to set custom smtp email/name rather than defaulting to the default user.

can't add new controller

hey

when i try to add new new controller i get this error :
Error 500
include(Controller.php): failed to open stream: No such file or directory

my controller file (protected\controllers\MetaController.php):

breadcrumbs[] = ucwords(Yii::app()->controller->action->id); return parent::beforeAction($action); } ``` public function actionIndex() { $this->render('index'); } ``` } ?>

view file(protected\views\meta\index.php) :

Test !

demo ko

hello, but can you install demo please?
thanks

New Analytics Dashboard

Analytics are an integral part of any blogging platform. Dashboard should integrate this

Tasks:

  • Integrate EAnalytics and use analytics.js for analytics tracking
  • Implement CiiAnalytics so that data can be loaded in dynamically rather than statically via the config.
  • Convert default theme to use analytics.pageview() for infinite scrolling on blog/
  • Implement Dashboard for toggling analytics.js services on and off (with various settings)

Implement CiiMS specific analytics tracking which can report directly to the dashboard so that data can be seen at a glance?

Scheduling Posts

Allow posts to be scheduled for auto release at a certain time/day

Error 500 Undefined index: blog-image

Hello, first of all, thanks for sharing your work..
My issue is, after finishing installation when i try to run in "frontend" i get some php notices and an "Error 500 Undefined index: blog-image", that can't let me continue.

Below are the php notices:

  1. Notice: Undefined index: q in \path\to\CiiMS\themes\default\views\layouts\main.php on line 34
  2. Notice: Trying to get property of non-object in \path\to\CiiMS\themes\default\views\layouts\main.php on line 46
  3. Notice: Trying to get property of non-object in \path\to\CiiMS\themes\default\views\layouts\main.php on line 55

Installation on Windows XP

I have Windows XP SP3 with wamp local server package. After downloading, unzipping and visiting the folder (localhost\ciims) installation begins and on stage #2 it says it needs write permission to : E:\wamp\www\ciims\protected\modules\install/runtime/ (notice the slashes , backslashes because of windows).
No runtime folder can be created. If I create it manually, I can move to stage #3 , but it stops there (thinking it is) downloading Yii.
Would you fix it please with the slashes?

Thanks

Petros

i18n() Support

Support i18n() at both the database level and at at the PHP app level.

Multibloggers - Supported?

Hi,
Is this supported? Have multiple users who can blog only?
I mean any user can comment but not all can blog (roles roles roles :))

Cant view newly added content

After fresh install I added new content to the uncategorized category then after viewing the content it returns Error 500 Array to string conversion

SMTP Details

Allow the user to enter their own SMTP details if they are running on a server which does not have an SMTP server built into it (eg postfix).

after fresh install

it adds an \ instead of a / after fresh install on line 74 of main config resulting in error after install.

so

'yiiPath' => 'c:/xampp/htdocs/framework',

and should be

'yiiPath' => 'c:/xampp/htdocs/framework/',

Login bug on develop branch

protected/components/UserIdentity.php gives an error $meta not defined when a user tries to login before verifying email.

Author ACL restrictions

ADMIN: * Permissions
EDITOR: Ability to edit, but not create/delete posts
AUTHOR: Ability to CRUD their own posts, but not others.

Registration: Password Length Requirements/Strength Meter

"When I try to register as a guest it gives me an error says "Looks like there were a few errors in your submission" now, the problem here is not really an error, I found at because I chose a password less than 8 characters, I thought you might want to give the guest an indication of how man characters they should have in their password."


Implement a password strength meter in javascript that notifies the user if passwords are less than 8 characters.

windows again

I don't mean to be rude, but no matter what the manuals say, Windows has its hicups. It traverses directories both with slash and backslash, but it has a problem with the forward slash in the creation of a directory.
I think there is some discrepancy between getcwd() and $_SERVER['DOCUMENT_ROOT'](if you use them at all that is).
I am a newbie in PHP and generally I know NOT a lot.

Thanks for bearing along with me.

Petros

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.