dbrisinajumi / yeeki
Yeeki is a flexible wiki engine that can be used either as a standalone application or as an Yii framework module
Installs: 119
Dependents: 1
Suggesters: 0
Security: 0
Stars: 0
Watchers: 4
Forks: 21
Type:yii-extension
pkg:composer/dbrisinajumi/yeeki
Requires
- php: >=5.3.0
This package is auto-updated.
Last update: 2025-10-07 23:38:31 UTC
README
Yeeki is a flexible wiki engine that can be used either as a standalone application or as an Yii framework module.
By default it uses markdown syntax with addition of wiki-links.
Implemented features
- Unicode support
- namespaces
- page index
- revision history
- ability to view specific revision
- ability to enter change summary for edit and view it at revision history page
- revision diff
- multiple markup dialects support (only markdown provided out of the box)
- cross-linking with [[wiki-links]]
- theming support
- i18n support
Requirements
Currently in order to use Yeeki you need MySQL with InnoDB engine enabled. In the future it is planned to allow using it with MyISAM and PostgreSQL.
Also server should be able to run Yii framework.
Using Yeeki as an application
Currently you need to perform steps listed below. In the future versions all these will be covered by automated installer.
- Unpack contents of release archive.
- Point your webserver docroot to
www. - Make sure webserver have write permissions for
www/assetsandapp/runtime. - Create a database with
utf8encoding andutf8_general_cicollation. - Provide proper database credentials in
app/config/db.php. - Run
install.phpfrom a web browser.
Using Yeeki as a module
- Copy
app/modules/wikito your application directory. - Using
yiicapply migrations with the following command:
yiic migrate --migrationPath=application.modules.wiki.migrations --migrationTable=wiki_migration
- Add
wikimodule to your web application config (usually it isprotected/config/main.php):
return array( 'basePath'=>dirname(__FILE__).DIRECTORY_SEPARATOR.'..', 'name'=>'My cool application', // add the following: 'modules' => array( 'wiki' => array( ), ), // …
- Add
cachecomponent to your application configuration:
return array( // ... 'components' => array( 'cache' => array( 'class' => 'CFileCache', ), ), );
Implementing data interfaces and configuring module
In order to use wiki in your application you should implement some simple interfaces
and configure module pointing to implementations. If you're using standard Yii::app()->user
and standard RBAC then the only mandatory interface to implement is IWikiUser.
You can find sample implementation in app/components/WikiUser.php. After
implementing it you need to configure the module:
'modules' => array(
'wiki' => array(
'userAdapter' => array(
'class' => 'WikiUser',
),
),
),
See also IWikiAuth, IWikiSearch.
Theming Yeeki
You can use standard Yii theming feature to theme Yeeki. For details please refer to the definitive guide.
License
Yeeki is licensed under New BSD license. That allows proprietary use, and for the software released under the license to be incorporated into proprietary products. Works based on the material may be released under a proprietary license or as closed source software. It is possible for something to be distributed with the BSD License and some other license to apply as well.
Credits
- Initial code and ideas: Alexander Makarov, @samdark.
- Features contribution: Mark Bryk, @mbryk.
Thanks
- CleverTech for supporting this OpenSource project.