Current Version:
3.5 (Release)

What is it for?

This plugin allows players to store books, maps, and more into those once useless bookshelves - just like chests! It encourages players to write books and store them in shelves, and can build onto your economy with libraries and bookstores by using the built in Vault support. Unlimited bookshelves make rule walls a thing of the past; store rule books inside an unlimited shelf, and every player can have one! Book Shelves are opened like a chest, by right clicking on the shelf. This opens a chest-like inventory that only allows the storage of books, maps, records, and paper. The items are stored in an SQLite database, so no setup is required to use this plugin! MySQL support is optional. These are just a few of the many features of BookShelf.

What are the Features?

  • Store books, maps, records (music discs), and paper in bookshelves!
  • Right click on shelves to open a familiar chest-like inventory!
  • Configurable top/bottom access. Disable it, and hide the shelves in your floor!
  • Create unlimited shelves that give out infinite copies! - Great for rule books, libraries, newspapers, city maps, and more!
  • Create shop shelves that work with any Economy! (Using Vault)
  • Combine unlimited and shop shelves to create a shop that has unlimited copies! - Great for server stores!
  • Create a donation shelf type that allows the owner to add/remove books, while other players can only add books! Good for library submissions!
  • You can only store books, maps, paper, and records.
  • Items maintain their position in the shelf; none of that "auto-sorting" business.
  • Runs on SQLite - No setup!
  • Can be configured to use MySQL instead of SQLite!!
  • Configurable shelf sizes! (Rows of 9, Max 6 rows)
  • Configurable default shelf names!
  • Each shelf can be individually named - Great for naming library sections!
  • Configure what types of books can be put into shelves!
  • When the shelf is broken, books drop like a chest - nothing is lost!
  • Reloading does not break the plugin!!
  • Support for LWC!
  • Support for Towny!
  • Support for WorldEdit!
  • Support for WorldGuard!
  • Simple Permissions!
  • Easy-to-remember Commands!
  • Signs can be placed on shelves!
  • Enable/disable certain shelves, all shelves with the same name, or Enable/Disable all shelves by default!
  • Multiple players can access the same shelf at the same time!
  • Disable selling books/paper to villagers!
  • Allow books/maps/paper/etc to only be stored in shelves! (No chests!)
  • Shelves have ownership!! Ops are owners of every shelf.


Check out other videos by bizburns01 (Luigi_Vampa)!

Usage and FAQ

Click here to learn about the Config, Permissions, Commands, Economy, and read the FAQ!

Parlez-vous français?

Cliquez ici! (Merci, nefald!)


Need help? Want to give a suggestion? Report a bug? Testimonials? Have a server running BookShelf?
Check out the Forums!

Get Support

There are many ways to get support:

  • Post a ticket - I try to respond quickly to these.
  • Post a comment
  • Post on the Forums
  • PM me!
  • If it's urgent, email me at: mitcht (at) aptitekk (dot) com - Make sure I know you are asking about this plugin! :)

I'm happy to help! Don't be afraid.

Last notes

Thanks to Deathmarine for his awesomeness and code samples he let me learn off of!

Thanks to all the awesome people who made videos about BookShelf!

Thanks to lvk and softvelvet for the donations!

Please, leave suggestions and comments! If you find a bug please tell me! Thanks! :)

Git Source Code:

Please remember, if you use/modify my code you must also give this freedom to your users. Read up on GPLv2 before claiming my code as yours.

Need a plugin created for you? I'm on Fiverr!

Please Donate if my plugin has helped you out. Thanks! :)

You must login to post a comment. Don't have an account? Register to get one!

  • Avatar of Pew446 Pew446 Apr 18, 2014 at 08:13 UTC - 0 likes

    @Undreas: Go

    I've found and fixed the bugs and I have uploaded the new 3.5. Just gotta wait for the mods to approve. Thanks again for finding the bug, if you have any other problems or inconveniences, let me know! Thanks!! :)


  • Avatar of Pew446 Pew446 Apr 17, 2014 at 11:15 UTC - 0 likes

    @Undreas: Go

    Wow awesome! I don't mind being put to work, keeps me busy! I'm on Spring Break right now anyway, so this gives me something to do :P You did help me out though; being a team of one, I often miss bugs because I don't have the testing capabilities that most developers have when they work in teams, so I have to rely on my users to catch any issues I overlook. I try to find and fix every bug I can before releasing, but once in a while a bug like this slips out. I was lucky to have you find it for me. :) Woulda been a disaster if I didn't know about it until it became a real problem. Thank you!

  • Avatar of Undreas Undreas Apr 17, 2014 at 10:55 UTC - 0 likes

    @Pew446: Go

    Yeah, imagine someone having bookshelves filled to the brim, then got the 3.5 version and had the same thing happen that happened to me.

    Anyway, glad to have "helped you out" x) more like "put you to work". So it's a bittersweet feeling, I suppose.

    It's an awesome plugin though. Sad Mojang hasn't implemented this themselves... but more the light shines on you, right? Haha. So, for that, and because of your fast response, I think I'll actually chip in some money for you next week or so (: you're well worth it.

    Take care!

  • Avatar of Pew446 Pew446 Apr 17, 2014 at 10:47 UTC - 0 likes

    @Undreas: Go

    Odd. Thanks for letting me know! Time to investigate :) I'm going to pull 3.5 off the downloads until I find the fix. Sorry to everyone who was looking forward to it. I'll have it working asap!

  • Avatar of Undreas Undreas Apr 17, 2014 at 10:43 UTC - 0 likes

    @Pew446: Go

    I managed to get it to work.

    I tried version 3.4 again, and completely rebooted the server. And it seems to be working. Not with version 3.5 though.

    Earlier I just restarted the server via the command, but apparently that wasn't sufficient.

    As for your other questions... running the recentmost version of 1.7.5. Rolled back to 1.7.2 beta build for the purpose of testing if there were any differences (in which there were none)

    Happened with any shelf, crafted or spawned in. Have no plugins that restricts anything in any way.

    Well, there must be something weird going on with V3.5 then.

  • Avatar of Pew446 Pew446 Apr 17, 2014 at 10:23 UTC - 0 likes

    @Undreas: Go

    Thanks! I looked it over and it appears that no item data is being written to the database, or it is being written and just got deleted or something. I'm curious to know:

    • What version of CB are you using?
    • What version of the plugin are you using?
    • Does this happen for any particular type of shelf, or is it just any shelf?
    • Are you placing the shelf in a WorldGuard region or anything on your world?

    I want to attempt to replicate it on my computer, and I'll help you sort this out. :)

  • Avatar of Undreas Undreas Apr 17, 2014 at 10:06 UTC - 0 likes

    @Pew446: Go

    I'll do that for you.

    I already tried having only your plugin running with no change, sadly.

    But you know, it could just be as simple as me having to portforward for 3306. I did do that a few moments in advance before I downloaded this plugin, so it could just be a matter of time before it works.

    My ISP is a bit slow when it comes to the ports actually registering as being open.

    But I'll send you the file nonetheless.

  • Avatar of Pew446 Pew446 Apr 17, 2014 at 10:01 UTC - 0 likes

    @Undreas: Go

    Can you send your Shelves.db file or an export of your MySQL table to [email protected] for me? I'd like to look at it and see if anything is messed up :P I'm happy to help, I'll do anything I can to help you get up and running! The plugin is supposed to run right out of the box, so I don't think you did anything to mess it up. Maybe another plugin is conflicting or something. :)

  • Avatar of Undreas Undreas Apr 17, 2014 at 09:58 UTC - 0 likes

    @Pew446: Go

    No error logs at all, oddly enough.

    I've been attempting with both SQLite and MySQL. Don't rush it though :D I'm sure the issue is very simple, it's just that I overlooked it or something. Hm...

  • Avatar of Pew446 Pew446 Apr 17, 2014 at 09:25 UTC - 0 likes

    @Undreas: Go

    Do you have any error logs? I'd love to help you get this running! Are you using SQLite (default) or MySQL? Thanks!


Date created
Aug 07, 2012
Last update
Apr 18, 2014
Development stage
GNU General Public License version 2 (GPLv2)
Curse link
Recent files