forum 0,0 travis-ci Packagist

Phalcon official Forum

Phosphorum 3

Build Status

Phosphorum is an engine for building flexible, clear and fast forums. You can adapt it to your own needs or improve it if you want.

Please write us if you have any feedback.

It is used by:

NOTE

The master branch will always contain the latest stable version. If you wish to check older versions or newer ones currently under development, please switch to the relevant branch/tag.

Get Started

Requirements

To run this application on your machine, you need at least:

Installation

1. Getting project

Install composer in a common location or in your project:

$ curl -s http://getcomposer.org/installer | php

Create the composer.json file as follows:

{
    "require": {
        "phalcon/forum": "~3.0"
    }
}

Run the composer installer:

$ php composer.phar install

Another way to get this project by using composer create-project:

$ composer create-project phalcon/forum

2. Creating database

Then you'll need to create the database and initialize schema:

$ echo 'CREATE DATABASE forum CHARSET=utf8 COLLATE=utf8_unicode_ci' | mysql -u root
$ cat schemas/forum.sql | mysql -u root phosphorum

3. Set up project

Copy environment config:

$ cp .env.example .env

Copy application config:

$ cp app/config/config.example.php app/config/config.php

You can override application configuration by creating development configuration:

$ cp app/config/development.example.php app/config/development.php

Schema Changes

Changes to the database that you need to spend if your version...

  • Older than 2.0.0: schemas/upgrade-to-2.0.0.sql
  • Older than 2.0.1: schemas/upgrade-to-2.0.1.sql

Initial Test Data

You can create fake entries on an empty Phosphorum installation by running:

$ php scripts/random-entries.php

Directory Permissions

After installing Phosphorum, you may need to configure some permissions. Directories within the app/cache and the app/logs directory should be writable by your web server or Phosphorum will not run.

OAuth

This application uses Github as authentication system, you need a client id and secret id to be set up in the configuration (app/config/config.php).

Starting the Beanstalkd client

A PHP client to deliver e-mails must be enabled in background:

$ php scripts/send-notifications-consumer.php &

You can serve it with Supervisor by using following config:

; /etc/supervisor/conf.d/send-notifications-consumer.conf
;
; This is axample.
; Please update config according to your environment

[program:notifications_consumer]
command=/usr/bin/php send-notifications-consumer.php
directory=/var/www/forum/scripts/
autostart=true
autorestart=true
user=www-data
stderr_logfile=/var/www/forum/app/logs/notification_consumer.err.log
stdout_logfile=/var/www/forum/app/logs/notification_consumer.out.log

Tests

Phosphorum use Codeception functional, acceptance and unit tests.

First you need to re-generate base classes for all suites:

$ vendor/bin/codecept build

Sure, for acceptance tests you also need Selenium server executable as well. You need Java installed in order to run the Selenium server. You can launch it by running this:

$ java -jar selenium-server-standalone-2.53.1.jar

Note: replace 2.53.1 to your version.

Note: Selenium may not support the most recent versions of Firefox.

Execute all test with run command:

$ vendor/bin/codecept run
# OR
$ vendor/bin/codecept run --debug # Detailed output

Execute unit test with run unit command:

$ vendor/bin/codecept run unit

More details about Console Commands see here.

License

Phosphorum is open-sourced software licensed under the New BSD License. © Phalcon Framework Team and contributors

Related Repositories

laravel-forum

laravel-forum

A minimal forum package designed for easy integration into any Laravel 4/5 appli ...

Android-Carbon-Forum

Android-Carbon-Forum

Android Client for Carbon Forum with Material Design. ...

bem-forum

bem-forum

BEM forum on top of github issues ...

forum-plugin

forum-plugin

A simple embeddable forum ...

pony-forum

pony-forum

A modern alternative to ancient forum CMSes like vBulletin and PHPBB in Python o ...


Top Contributors

sergeyklay andresgutierrez phalcon xboston boxbillinggit niden kenjis ovr gsouf duythien WooDzu SidRoberts Rewt0r stibiumz quasipickle scento aaaqqqq macagoraga nexik Woolworths

Dependencies

package version
php >= 5.6
ext-curl *
ext-mbstring *
ext-iconv *
ext-json *
ext-phalcon ~3.0
vlucas/phpdotenv ^2.4
aws/aws-sdk-php ^2.5
guzzlehttp/guzzle >=4.1.4 <7.0
swiftmailer/swiftmailer ^5.4
kzykhys/ciconia ^1.0
phalcongelist/php-diff ^2.0
elasticsearch/elasticsearch ^1.4
phalcon/incubator ~3.0
phalcongelist/breadcrumbs ^1.2
league/flysystem-dropbox ^1.0
egulias/email-validator ^2.1
google/recaptcha ^1.1
filp/whoops ^2.1
dev phpdocumentor/reflection-docblock ^2.0
phpunit/phpunit ^4.8
fzaninotto/faker ^1.6
codeception/codeception ^2.2
codeception/verify ~0.3
codeception/specify ~0.4
codeception/mockery-module ^0.2
squizlabs/php_codesniffer ~2.7
phalcongelist/dd ^1

Releases

-   v3.0.0 zip tar
-   v2.3.0 zip tar
-   v2.2.0 zip tar
-   v2.1.0 zip tar
-   v2.0.5 zip tar
-   v2.0.4 zip tar
-   v2.0.3 zip tar
-   v2.0.2 zip tar
-   v2.0.1 zip tar