Skip to content
Lightweight PHP image board with MySQL database support
Branch: master
Clone or download
Pull request Compare This branch is 3 commits ahead, 7 commits behind SthephanShinkufag:master.
Type Name Latest commit message Commit time
Failed to load latest commit information.
css Catalog looks more solid now. Some CSS tweaks. Jun 24, 2019
inc Indication of replies to post. Bugfixes. Jul 4, 2019
js Full implementation of the Likes system Feb 9, 2019
res Removing placeholder files Nov 30, 2010
src Removing placeholder files Nov 30, 2010
thumb Removing placeholder files Nov 30, 2010
.gitignore Use cURL instead of file_get_contents, mime_content_type instead of s… Dec 14, 2017
LICENSE License Jan 7, 2011 Indication of replies to post. Jul 3, 2019
favicon.png FORKED! Inital commit: apply all uncomitted changes. Dec 22, 2018
filler.png Preview for attached files can be replaced by filler image Jun 23, 2019
imgboard.php Indication of replies to post. Bugfixes. Jul 4, 2019
locked.png Threads can be locked for posting Jun 19, 2019
noimage.png catalog.html generation on each index rebuild. Jun 24, 2019
settings.default.php Multiple Moderators. Moderation log. Generation of modlog.html. Jun 27, 2019
sticky.png Add sticky threads Aug 21, 2015
swf_thumbnail.png Add optional SWF support, make picture support optional, add text boa… Jul 5, 2014
video_overlay.png Add optional WebA and WebM support Jun 24, 2014

TinyIB — a lightweight and efficient imageboard engine


Got database? Get speed. Use MySQL for an efficient set-up able to handle high amounts of traffic.

Not looking for an image board script? TinyIB settings is able to allow new threads without requiring an image, or even disallow sending of images entirely.

Original TinyIB features:

  • GIF, JPG, PNG, SWF and WebM upload.
  • YouTube, Vimeo and SoundCloud embedding.
  • CAPTCHA (A simple implementation is included, reCAPTCHA is also supported)
  • Reference links >>###
  • Delete post via password.
  • Management panel:
    • Administrators and moderators use separate passwords.
    • Moderators are only able to sticky threads, delete posts, and approve posts when necessary. (See TINYIB_REQMOD)
    • Ban offensive/abusive posters across all boards.
    • Post using raw HTML.
    • Upgrade automatically when installed via git. (Tested on Linux only)

This fork features:

  • Markdown text formatting: bbcode (multiline text and nested tags), wakabamark.
  • Markup buttons under the text area in postform.
  • "Quote text" button that inserts selected text into the textarea with > symbols.
  • Named links formatting, like on github: [TinyIB](
  • Upload, view and expand WEBM and MP4 without instaled mediainfo and ffmpegthumbnailer. Videos are injected right in page without generated thumbnails.
  • Convenient css support for mobile devices.
  • Custom default post names.
  • Truncating of long posts by size in bytes and by number of lines.
  • Admin: posting with red name if admin is logged in.
  • "Sage" indicator in posts.
  • Post likes system (initial implementation, still in progress).

This fork of the fork features:

  • Fork is based on TinyIB from SthephanShinkufag
  • At this moment works only with PDO+MySQL (Flatfile / PostgreSQL / SQlite is not supported yet).
  • DB schema changed!
  • Bugfixes.
  • You can paste 4 files per post.
  • Administrator and Moderators can selectively delete attached files.
  • Threads can be locked for posting.
  • Administrator and Moderators can edit message text in posts.
  • Preview for attached files can be replaced by filler image.
  • Generation of catalog.html.
  • You can set list of Moderators.
  • Generation of modlog.html.
  • Indication of replies to post.


  1. Verify the following are installed:
    • PHP 4.3+
    • GD Image Processing Library
      • This library is usually installed by default.
      • If you plan on disabling image uploads to use TinyIB as a text board only, this library is not required.
  2. CD to the directory you wish to install TinyIB.
  3. Run the command:
    • git clone ./
  4. Copy settings.default.php to settings.php
  5. Configure settings.php
    • When setting TINYIB_DBMODE to pdo, note that only the MySQL databases drivers have been tested. Theoretically it will work with any applicable driver, but this is not guaranteed. If you use an alternative driver, please report back.
    • To require moderation before displaying posts:
      • Ensure your TINYIB_DBMODE is set to mysql, mysqli, or pdo.
      • Set TINYIB_REQMOD to files to require moderation for posts with files attached.
      • Set TINYIB_REQMOD to all to require moderation for all posts.
      • Moderate posts by visiting the management panel.
    • To allow WebM upload:
      • Ensure your web host is running Linux or FreeBSD.
      • Install mediainfo and ffmpegthumbnailer. On Ubuntu, run sudo apt-get install mediainfo ffmpegthumbnailer. On FreeBSD run pkg install mediainfo ffmpegthumbnailer.
    • To remove the play icon from .SWF and .WebM thumbnails, delete or rename video_overlay.png or set ADD_VIDEO_OVERLAY_IMAGE to false.
    • To use ImageMagick instead of GD when creating thumbnails:
      • Install ImageMagick and ensure that the convert command is available.
      • Set TINYIB_THUMBNAIL to imagemagick.
      • Note: GIF files will have animated thumbnails, which will often have large file sizes.
  6. CHMOD write permissions to these directories:
    • ./ (the directory containing TinyIB)
    • ./src/
    • ./thumb/
    • ./res/
    • ./inc/flatfile/ (only if you use the flatfile database mode)
  7. Navigate your browser to imgboard.php and the following will take place:
    • The database structure will be created.
    • Directories will be verified to be writable.
    • The board index will be written to TINYIB_INDEX.


  1. If you are not logged in already, log in to the management panel by clicking [Manage].
  2. On the board, tick the checkbox next to the offending post.
  3. Scroll to the bottom of the page.
  4. Click Delete with the password field blank.
    • From this page you are able to delete the post, attached files and/or ban the author.


  1. Obtain the latest release.
    • If you installed via Git, run the following command in TinyIB's directory:
      • git pull
    • Otherwise, download and extract a zipped archive.
  2. Note which files were modified.
    • If settings.default.php was updated, migrate the changes to settings.php
      • Take care to not change the value of TINYIB_TRIPSEED, as it would result in different secure tripcodes.
    • If other files were updated, and you have made changes yourself:
      • Visit GitHub and review the changes made in the update.
      • Ensure the update does not interfere with your changes.

Database structure was last modified on 26th Jun 2019.


  1. Ensure you are running the latest version of TinyIB.
  2. Review the open issues.
  3. Open a new issue.


  1. Fork TinyIB.
  2. Commit code changes to your forked repository.
  3. Submit a pull request describing your modifications.
You can’t perform that action at this time.