Tinyboard branch with more features and that receives security patches
Go to file
Amneesh Singh 9e4b8fad4d
mass replace REMOTE_ADDR with HTTP_X_REAL_IP
Signed-off-by: natto1784 <natto@weirdnatto.in>
2022-11-18 13:59:50 +05:30
inc mass replace REMOTE_ADDR with HTTP_X_REAL_IP 2022-11-18 13:59:50 +05:30
js Fix mobile browser hang issue when auto-reload by reducing DOM modification in forloop 2022-08-20 12:19:41 -04:00
static Add banners as default functionality & display them on mod login / dashboard when enabled (#513) 2022-11-17 01:48:24 -05:00
stylesheets make board names bigger 2022-11-18 11:40:47 +05:30
templates templates/themes/catalog: remove old list of styles 2022-11-18 11:56:41 +05:30
tmp tesseract OCR support for spamfilters 2016-06-09 11:09:10 +02:00
tools fix cli tools 2021-02-14 09:22:44 +01:00
.gitignore Install config to secrets.php by default 2022-08-29 11:47:47 -04:00
.gitmodules Various fixes 2019-11-29 13:54:08 +08:00
Dockerfile add Dockerfile 2022-11-18 09:48:18 +05:30
LICENSE.Tinyboard.md move Tinyboard license 2014-04-18 11:13:41 +02:00
LICENSE.md Update license and copyright dates 2018-03-01 22:57:53 -03:00
README.md I'd just like to interject for a moment. 2022-10-15 10:09:10 -04:00
b.php correct the banner script based on how lainchan does it 2022-11-18 09:43:43 +05:30
banned.php banned.php now shows a pretty page instead of an ugly one. credits to JamesJDillon @ Lainchan 2022-10-15 10:09:10 -04:00
composer.json securimage captcha 2021-11-13 01:24:34 +01:00
composer.lock securimage captcha 2021-11-13 01:24:34 +01:00
install.php Install config to secrets.php by default 2022-08-29 11:47:47 -04:00
install.sql add telegrams 2021-03-12 21:51:42 +01:00
log.php fix require's 2021-02-13 21:30:27 +01:00
mod.php fix mod.php. check if key is there and is valid 2022-09-15 13:03:06 -04:00
player.php Suppress warnings that might leak information 2014-08-09 12:14:56 +02:00
post.php mass replace REMOTE_ADDR with HTTP_X_REAL_IP 2022-11-18 13:59:50 +05:30
report.php Moved hardcoded html filepaths into config file for extensibility (#354) 2022-08-29 10:50:45 -04:00
search.php mass replace REMOTE_ADDR with HTTP_X_REAL_IP 2022-11-18 13:59:50 +05:30
securimage.php securimage captcha 2021-11-13 01:24:34 +01:00
smart_build.php fix require's 2021-02-13 21:30:27 +01:00

README.md

vichan - A lightweight and full featured PHP imageboard.

Vichan has next to no active development.

As of 29 August 2022, though, it supports PHP8.1.

About

vichan is a free light-weight, fast, highly configurable and user-friendly imageboard software package. It is written in PHP and has few dependencies.

Security problems can be reported to the development team: DEVELOPMENT <AT> VICHAN <DOT> NET.

While there is currently no active development besides fixing security problems, we don't exclude the possibility to refactor the code in order to meet today's standards and continue our work from the point where @czaks retired in 2017. Before this milestone is achieved though, we strongly urge you to consider other imageboard packages. It is the opinion of the vichan development team that no new vichan imageboards should be deployed at the moment, and other imageboard packages used instead.

For support, feel free to join our IRC channel at irc.6an.org.

Some documentation may be found on our wiki. (feel free to contribute)

History

vichan is a fork of (now defunc'd) Tinyboard, a great imageboard package, actively building on it and adding a lot of features and other improvements.

Maintainer timeline

  1. @h00j (2021 - present)
  2. @ctrlcctrlv (2017 - 2021)
  3. @czaks (2014 - 2017) (The author of vichan fork)
  4. @savetheinternet (2010 - 2014) (The creator of Tinyboard)

Requirements

  1. PHP >= 5.4 (we still try to keep compatibility with php 5.3 as much as possible) PHP 7.0 is explicitly supported. PHP 7.2 works as well, but may cause as yet unreported bugs.
  2. MySQL/MariaDB server
  3. mbstring
  4. PHP GD
  5. PHP PDO
  6. A Unix-like OS, preferrably FreeBSD or GNU/Linux

We try to make sure vichan is compatible with all major web servers. vichan does not include an Apache .htaccess file nor does it need one.

  1. MySQL/MariaDB server >= 5.5.3
  2. ImageMagick (command-line ImageMagick or GraphicsMagick preferred).
  3. APC (Alternative PHP Cache), APCu (Alternative PHP Cache), XCache, Memcached or Redis

Contributing

You can contribute to vichan by:

  • Developing patches/improvements/translations and using GitHub to submit pull requests
  • Providing feedback and suggestions
  • Writing/editing documentation

Installation

  1. Download and extract vichan to your web directory or get the latest development version with:

    git clone git://github.com/vichan-devel/vichan.git
    
  2. run composer install inside the directory

  3. Navigate to install.php in your web browser and follow the prompts.

  4. vichan should now be installed. Log in to mod.php with the default username and password combination: admin / password.

Please remember to change the administrator account password.

See also: Configuration Basics.

Upgrade

To upgrade from any version of Tinyboard or vichan:

Either run git pull to update your files, if you used git, or backup your inc/instance-config.php, replace all your files in place (don't remove boards etc.), then put inc/instance-config.php back and finally run install.php.

To migrate from a Kusaba X board, use http://github.com/vichan-devel/Tinyboard-Migration

Demo

Demo with the most updated version of Vichan.

  1. PHP 8.1
  2. MySQL 5.7
  3. KeyDB 6.2.1 (Redis)
  4. NGINX 1.14.0

Support

vichan is still beta software -- there are bound to be bugs. If you find a bug, please report it.

CLI tools

There are a few command line interface tools, based on Tinyboard-Tools. These need to be launched from a Unix shell account (SSH, or something). They are located in a tools/ directory.

You actually don't need these tools for your imageboard functioning, they are aimed at the power users. You won't be able to run these from shared hosting accounts (i.e. all free web servers).

Oekaki

vichan makes use of wPaint for oekaki. After you pull the repository, however, you will need to download wPaint separately using git's submodule feature. Use the following commands:

git submodule init
git submodule update

To enable oekaki, add all the scripts listed in js/wpaint.js to your instance-config.php.

WebM support

Read inc/lib/webm/README.md for information about enabling webm.

vichan API

vichan provides by default a 4chan-compatible JSON API. For documentation on this, see: https://github.com/vichan-devel/vichan-API/ .

License

See LICENSE.md.