The official, canonical postActiv repository.

Maiyannah Bishop df3d7f87a7 Merge branch 'nightly' of into nightly 2 years ago
.phan a282a570f8 Add phan config file 2 years ago
actions fc8af05a5c Merge branch 'nightly' of into nightly 2 years ago
classes fc8af05a5c Merge branch 'nightly' of into nightly 2 years ago
db 3bd86026a1 Update copyright header 2 years ago
extlib cb9df9ee90 Revert "Update to phpseclib 1.0.5" 2 years ago
lib fc8af05a5c Merge branch 'nightly' of into nightly 2 years ago
locale bf0ec1cec3 Moved Locale information from ActivitySpam module into the core software 2 years ago
media 06e129429b Naturaldocs for the doc updates 2 years ago
modules 98b5b3b554 Convert LogFilterPlugin comments to NaturalDocs-style 2 years ago
plugins 0db0f8bed1 Move Translate plugin into its own repo 2 years ago
scripts c9ce71f47f Add sample systemd unit 2 years ago
socialfy-another-domain afdd6d39ec Some Google stuff that need to be there (or comments) 3 years ago
templates 573aa2c7e2 Numerous changes as we exposed variables. 2 years ago
theme fc8af05a5c Merge branch 'nightly' of into nightly 2 years ago
vagrant 864e412733 Merge branch 'apache-php7-mariadb-vagrantfile-fixes' into 'nightly' 2 years ago
.editorconfig 618cd707cb Only apply editorconfig to php files 2 years ago
.gitignore a282a570f8 Add phan config file 2 years ago
.gitmodules 885b7d81c5 Added Qvitter as a default distro plugin, as a git submodule 2 years ago 24bdcbad40 Add items_to_handle option to 2 years ago bb2ce3dd42 Add link to IETF RFC 2119 2 years ago 5c80f64ae3 Markdown-formatted version of AGPL. 2 years ago ec83642bde Further documentation and updates in preparation for 1.0.3 2 years ago 96fba5dc21 Update with new email. 2 years ago 09123a8d91 Change copyright in /classes/activity for the new year. 2 years ago
EVENTS.txt 11c57e7aee Remove Google References 3 years ago caa0c17a15 Merge branch 'master' of into nightly 2 years ago
Makefile 4b5e977a7b New _m() gettext wrapper with smart detection of plugin domains. Plugin base class registers your gettext files if present at initialization. 9 years ago
PLUGINS.txt 11c57e7aee Remove Google References 3 years ago ec83642bde Further documentation and updates in preparation for 1.0.3 2 years ago 86fbb6f78c Created 2 years ago
TODO.SOCIAL cba2c6d3c6 add todo list 8 years ago 0364c6b38d Lets make all the lose text files .md for consistency's sake. 2 years ago
apple-touch-icon.png 91b0fb8028 Add `apple-touch-icon.png` support; favicons for the iPhone OS. 10 years ago
favicon.ico a5bf34464f Also replace default favicon. 2 years ago
htaccess.sample 4a6f509aa5 More automated htaccess.sample 3 years ago
index.php d6f271aec7 Updating headers for 1.0.3 prep 2 years ago
install.php 444ca92b7b Changeover headers to NaturalDocs, change copyright to 2016-2017 2 years ago
lighttpd.conf.example 220ec072c9 Lighttpd config example updated. 5 years ago
nginx.conf.sample 55b13bbb84 Update nginx.conf.sample to something that worked for me in modern CentOS and Ubuntu. 2 years ago
pa-public-access.ppk da2207e4ba Add public access key to repo for semi-anon repo access. 2 years ago

postActiv 1.0.3

(c) 2016-2017 Maiyannah Bishop

If you're reading this on GitLab and you want the most up-to-date documentation, go here:

postActiv is derived from code copyright various sources:

  • GNU Social (C) 2013-2016, Free Software Foundation, Inc
  • StatusNet (C) 2008-2011, StatusNet, Inc

This is the README file for postActiv, a fork of the free software networking platform GNU social, which refactors the code base and adds several patches and features. It includes general information about the software and the project.

Some other files to review:

  • instructions on how to install the software.
  • upgrading from earlier versions
  • configuration options in gruesome detail.
  • PLUGINS.txt: how to install and configure plugins.
  • EVENTS.txt: events supported by the plugin system
  • full text of the software license

Information on using postActiv can be found in the "doc" subdirectory or in the "help" section on-line, or you can contact maiyannah on the fediverse at or her email at

There is also a website at with a lot of useful information, such as FAQs, more extensive mailing docs, and mailing list archives.


postActiv is a free software project to develop a social networking platform. It helps people in a community, company, or group to exchange short status updates, do polls, annouce events, or other social activites. Users can choose which people to "follow" and receive only their friends' or collegues' status messages. They can also view the public timeline of the site to see everyone, or the "whole known network" timeline, to see all the people in sites that have connected with this one, by someone following them. It provides a similar service to proprietary social network sites, but is decentralized, and with many additional features and an open, free software codebase that you can develop your own plugins for, it is much more awesome.

Using plugins available to postActiv, status messages can be sent to mobile phones or pages, instant messenger clients that implement XMPP, and desktop clients with support for the Twitter API. It is also compatible with plugins developed for GNU Social.

postActiv supports an open standard called OStatus that lets users in different networks follow each other. It enables a distributed social network spread all across the Web.

is derived from GNU Social, which is itself derived from StatusNet and Laconica. It is forked form commit bd306bdb9f in the Nightly branch of GNU Social, available here:

It is shared with you in hope that you too make an service available to your users. To learn more, please see the Open Software Service Definition 1.1:

You can read more about postActiv at the official website:


This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with this program, in the file "COPYING". If not, see .

IMPORTANT NOTE: The GNU Affero General Public License (AGPL) has
*different requirements* from the "regular" GPL. In particular, if
you make modifications to the GNU social source code on your server,
you *MUST MAKE AVAILABLE* the modified version of the source code
to your users under the same license. This is a legal requirement
of using the software, and if you do not wish to share your

Documentation in the /doc-src/ directory is available under the Creative Commons Attribution 3.0 Unported license, with attribution to "GNU social". See for details.

CSS and images in the /theme/ directory are available under the Creative Commons Attribution 3.0 Unported license, with attribution to "GNU social". See for details.

Our understanding and intention is that if you add your own theme that uses only CSS and images, those files are not subject to the copyleft requirements of the Affero General Public License 3.0. See This is not legal advice; consult your lawyer.

Additional library software has been made available in the 'extlib' directory. All of it is Free Software and can be distributed under liberal terms, but those terms may differ in detail from the AGPL's particulars. See each package's license file in the extlib directory for additional terms.


The minimum requirements to run postActiv are the following:

  • PHP: PHP 5 or higher is neccesary. We recommend using PHP 7 as all new postActiv code is being designed with that as the target version.
  • MySQL: You need either a MariaDB or MySQL database available for postActiv to store information in. MySQL 5.6 is the recommended version. MariaDB also works fine, but has some installation technicalities.
  • Web server: You must have either an Apache, nginx, or Litespeed web server configured with PHP support to serve up postActiv. We recommend Apache, but nginx is also well-supported.


Detailed installation information is in, but in basic, you will want to download the branch archive of your choice, unzip it to a web-accessible directory, and then run the Install.php file, which will guide you through further setup. You will want to have a database available for postActiv, of course.

The postActiv repository also contains MoonMan's SensitiveContent as a submodule, which allows users to block the display of attachments on posts that are tagged "NSFW". If you wish to install this plugin, you will have to download the branch of your choice, and then in /plugins/SensitiveContent execute git submodule init and git submodule update. This will require git, of course.


The main configuration file for postActiv (excepting configurations for dependency software or some plugins) is config.php in your postActiv root directory. If you edit any other file in the directory, like lib/default.php (where most of the defaults are defined), you will lose your configuration options in any upgrade, so you will want to make changes in the config.php file.

You can read to get the full summary of different options available to customize your postActiv install.


Being a fork of GNU social, most plugins that work with GNU social 1.2.0-beta4, the version of GNU social it was forked from, should also work with postActiv. However, if you run into porting issues with a GNU social plugin that you know works with GNU social but does not with postActiv, please raise an issue in the issue tracker and we can look into this.


The primary output for postActiv is syslog, unless you configured a separate logfile. This is probably the first place to look if you're getting weird behaviour from postActiv.

If you wish the postActiv log file to be in another location, specify this with the following in the config.php file:

$config['site']['logfile'] = '/path/to/postactiv.log';

If you're tracking the unstable version of postActiv in the git repository (see below), and you get a compilation error ("unexpected T_STRING") in the browser, check to see that you don't have any conflicts in your code.

In the event you run into problems you can't fix yourself, you can ask for assistance on the users mailing list, at

Unstable version

If you're adventurous or impatient, you may want to install the development version of postActiv. To get it, use the git version control tool like so:

git clone

In the current phase of development it is probably recommended to use git as a means to stay up to date with the source code. You can choose between these branches:

  • release "stable", few updates, well tested code
  • master "testing", more updates, usually working well
  • nightly "unstable", most updates, not always working

To keep it up-to-date, use 'git pull'. Watch for conflicts!

Further information

There are several ways to get more information about postActiv.