phpmyfaq/phpmyfaq


README

Travis branch Minimum PHP Version Slack

What is phpMyFAQ?

phpMyFAQ is a multilingual, completely database-driven FAQ-system. It supports various databases to store all data, PHP 5.6+ is needed in order to access this data. phpMyFAQ also offers a multi-language Content Management System with a WYSIWYG editor and an Image Manager, real time search support with Elasticsearch, flexible multi-user support with user and group based permissions on categories and records, a wiki-like revision feature, a news system, user-tracking, 40+ supported languages, enhanced automatic content negotiation, HTML5/CSS3 based responsive templates, PDF-support, a backup-system, a dynamic sitemap, related FAQs, tagging, RSS feeds, built-in spam protection systems, OpenLDAP and Microsoft Active Directory support, and an easy to use installation script.

Requirements

phpMyFAQ is only supported on PHP 5.6.0 and up, you need a database as well. Supported databases are MySQL, Percona Server, PostgreSQL, Microsoft SQL Server, SQLite3 and MariaDB. If you want to use Elasticsearch as main search engine, you need Elasticsearch 2.x as well. Check our detailed requirements on phpmyfaq.de for more information.

Installation

Package for end-users

The best way to install phpMyFAQ is to download it on phpmyfaq.de, unzip the package and open http://www.example.org/phpmyfaq/setup/index.php in your browser.

Git for developers

$ git clone git://github.com/thorsten/phpMyFAQ.git
$ cd phpMyFAQ
$ git checkout 3.0
$ curl -s https://getcomposer.org/installer | php
$ php composer.phar install
$ curl -o- -L https://yarnpkg.com/install.sh | bash
$ yarn install
$ yarn build

Then just open http://www.example.org/phpmyfaq/install/setup.php in your browser.

Testing

To run our unittest via PHPUnit v5.x, just execute this command on your CLI

$ ./bin/phpunit

Please note that phpMyFAQ needs to be installed via Composer.

Versioning

For transparency and insight into our release cycle, and for striving to maintain backward compatibility, phpMyFAQ will be maintained under the Semantic Versioning guidelines as much as possible.

Releases will be numbered with the following format:

<major>.<minor>.<patch>

And constructed with the following guidelines:

  • Breaking backward compatibility bumps the major (and resets the minor and patch)
  • New additions without breaking backward compatibility bumps the minor (and resets the patch)
  • Bug fixes and misc changes bumps the patch

For more information on SemVer, please visit http://semver.org/.

Bug tracker

Have a bug or a feature request? Please open a new issue. Before opening any issue, please search for existing issues.

Contributing

Please check out our page about contributing on phpmyfaq.de

Documentation

You can find the full documentation on phpmyfaq.de

License

Mozilla Public License 2.0, see LICENSE for more information.

Bundled libraries

TinyMCE

Licensed under the terms of the GNU Lesser General Public License

jQuery

Licensed under the terms of the MIT License

jQuery datePicker plugin

Licensed under the terms of the MIT License

jQuery Sparklines plugin

Licensed under the terms of the New BSD License

Modernizr

Licensed under the terms of the MIT and BSD licenses

Bootstrap

Licensed under the terms of the Apache License v2.0

phpseclib

Licensed under the terms of the GNU Lesser General Public License

Symfony Components

Licensed under the terms of the MIT License

TCPDF

Licensed under the terms of the GNU Lesser General Public License

TwitterOAuth

Licensed under the terms of the MIT License

Font Awesome

Licenced under the terms of the SIL Open Font License and MIT License

highlight.js

Licensed under the terms of the BSD License

Monolog

Licensed under the terms of the MIT License

PHP Client for Elasticsearch

Licensed under the terms of the Apache License v2.0

bootstrap-fileinput

Licensed under the terms of the BSD 3-Clause License

Copyright (c) 2001-2018 Thorsten Rinne and the phpMyFAQ Team