Source code of Leftypol imageboard
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Benjamin Southall be28bdff8d Add data-board to post container in order to allow quick-post-controls.js to work with overboard's / ukko theme 7 years ago
banners Remove everything from banners/ except images 9 years ago
inc Add ['boards_alias'] in order to have Unicode icons in top bar that route to non unicode board names intelligently. 7 years ago
js Initial implementation of Better post form #32. Still need to add language specification to code tag insertion,markdown support and latex support. 7 years ago
static Remove extra static epub thumbnail file with incorrect name. 7 years ago
stylesheets #90 Adding tsuki CSS 7 years ago
templates Add data-board to post container in order to allow quick-post-controls.js to work with overboard's / ukko theme 7 years ago
tmp tesseract OCR support for spamfilters 8 years ago
tools (2/2) advanced build. implement a daemon that will build static pages. 8 years ago
walls Add banners and wallpapers 9 years ago
.gitignore Remove everything from banners/ except images 9 years ago
.gitmodules Edit static pages commit 8 years ago
403.php New error pages 9 years ago
404.php New error pages 9 years ago move Tinyboard license 10 years ago Updated license date 10 years ago Remove outdated bitcoin address from the README 7 years ago
b.php Fix Content-Type header typographical error 8 years ago
banned.php Fix invisible not-banned text in some themes 8 years ago
banners.php List priority banners in banners.php. 8 years ago
bg.php Add background scripts 9 years ago
c.php Add background scripts 9 years ago
favicon.png Add favicon 10 years ago
install.php Merged lainchan with vichan master at 25/9/2016 a4b619ae5eaab5755dc215a496854dee8f7ce395 @czaks czaks committed on GitHub 2 days ago 8 years ago
install.sql Invalid unique key in install.sql #93 Reduced board and name varchar length to 125 (1000/8 = 125) 2 columns , 4 bytes each column in pages table schema. 7 years ago
lam Add symlinks 9 years ago
layer03 Add symlinks 9 years ago
log.php Public action logs commit (log.php) 8 years ago
mod.php Add JSON interface to Recents Posts functionality, e.g. mod_recent_posts 7 years ago
player.php Suppress warnings that might leak information 10 years ago
post.php Add isempty check for POST variable for multi file upload via URL 7 years ago
report.php Oops forgot a file 8 years ago
robots.txt Disallow robots 10 years ago
search.php oh hey look I just fixed #8 search.php 10 years ago
smart_build.php (2/2) advanced build. implement a daemon that will build static pages. 8 years ago
weeb Add symlinks 9 years ago

Lainchan - A fork of vichan


Lainchan is a fork of vichan, a great imageboard package, actively building on it and adding a lot of features and other improvements.


  1. PHP >= 5.4 (we still try to keep compatibility with php 5.3 as much as possible) PHP 7.0 is explicitly supported.
  2. MySQL/MariaDB server
  3. mbstring
  4. PHP GD
  5. PHP PDO

We try to make sure lainchan is compatible with all major web servers and operating systems. lainchan 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), XCache or Memcached


You can contribute to lainchan by:

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

If you need help developing a patch, please join our IRC channel. @ #lainchan-dev


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

    git clone git://
  2. Navigate to install.php in your web browser and follow the prompts.

  3. lainchan 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.


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


If you find a bug, please report it.

If you need assistance with installing, configuring, or using lainchan, you may find support from a variety of sources:

  • If you're unsure about how to enable or configure certain features, make sure you have read the comments in inc/config.php.
  • You can join lainchan's IRC channel for support #lainchan

Tinyboard support

vichan, and by extension lainchan, is based on a Tinyboard, so both engines have very much in common. These links may be helpful for you as well:

  • Tinyboard documentation can be found here.

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).


Wanting to have lainchan in your language? You can contribute your translations to vichan at this URL:


lainchan 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/ for information about enabling webm.

lainchan API

lainchan provides by default a 4chan-compatible JSON API, just like vichan. For documentation on this, see: .