Books
Improving safety and welfare at sea, one book at a time.
With around 100 years’ experience providing books at sea, our crew libraries supply 20,000 books to ships across the world, so seafarers can have the books they want to read.
With around 100 years’ experience providing books at sea, our crew libraries supply 20,000 books to ships across the world, so seafarers can have the books they want to read.
Learn about our non-returnable paperback library available to seafarers and ships worldwide.
Read More
We offer a range of maritime titles and are an authorised distributor of IMO Publishing.
Read More
We offer an excellent and prompt service, fulfilling the needs of corporate customers globally.
Read MoreStart typing your email on the grey line below and click the white and blue rectangular 'sign up' button to subscribe to our newsletter
SELECT (`label`.`id`) AS `id`, (`label`.`name`) AS `name`, (`label`.`path`) AS `path`, (`label`.`source`) AS `source`, (`label`.`content`) AS `content`, (`label`.`block`) AS `block`, (`label`.`discard`) AS `discard` FROM `label` WHERE `label`.`discard` IS FALSE AND (`label`.`path` = '' OR '/books' LIKE `label`.`path`) ORDER BY `label`.`name` ASC, `label`.`path` ASC
Command completed in 0.0023260116577148 seconds - 292 row(s) affected.
SELECT (`page`.`id`) AS `id`, (`page`.`parent`) AS `parent`, (`page`.`ordinal`) AS `ordinal`, (`page`.`name`) AS `name`, (`page`.`title`) AS `title`, (`page`.`summary`) AS `summary`, (`page`.`content`) AS `content`, (`page`.`theme`) AS `theme`, (`page`.`meta_title`) AS `meta_title`, (`page`.`meta_description`) AS `meta_description`, (`page`.`slug`) AS `slug`, (`page`.`password`) AS `password`, (`page`.`donation_text`) AS `donation_text`, (`page`.`donation_amounts`) AS `donation_amounts`, (`page`.`grid`) AS `grid`, (`page`.`grid_title`) AS `grid_title`, (`page`.`static`) AS `static`, (`page`.`donate`) AS `donate`, (`page`.`publish`) AS `publish`, (`page`.`discard`) AS `discard`, (`page`.`updated`) AS `updated`, ( SELECT `image` FROM `page_image` WHERE `page_image`.`discard` IS FALSE AND `page_image`.`publish` IS TRUE AND `page_image`.`page_id` = `page`.`id` ORDER BY `page_image`.`ordinal` ASC LIMIT 1) AS `image` FROM `page` WHERE `page`.`discard` IS FALSE AND `page`.`publish` IS TRUE ORDER BY `page`.`parent` ASC, `page`.`ordinal` ASC, `page`.`name` ASC, `page`.`id` ASC
Command completed in 0.0062777996063232 seconds - 63 row(s) affected.
SELECT (`page_image`.`id`) AS `id`, (`page_image`.`page_id`) AS `page_id`, (`page_image`.`ordinal`) AS `ordinal`, (`page_image`.`name`) AS `name`, (`page_image`.`title`) AS `title`, (`page_image`.`summary`) AS `summary`, (`page_image`.`url`) AS `url`, (`page_image`.`image`) AS `image`, (`page_image`.`image_mobile`) AS `image_mobile`, (`page_image`.`image_alt`) AS `image_alt`, (`page_image`.`publish`) AS `publish`, (`page_image`.`discard`) AS `discard`, (`page_image`.`updated`) AS `updated` FROM `page_image` WHERE `page_image`.`discard` IS FALSE AND `page_image`.`publish` IS TRUE ORDER BY `page_image`.`ordinal` ASC, `page_image`.`name` ASC, `page_image`.`id` ASC
Command completed in 0.0013248920440674 seconds - 62 row(s) affected.
SELECT (`page_section`.`id`) AS `id`, (`page_section`.`page_id`) AS `page_id`, (`page_section`.`ordinal`) AS `ordinal`, (`page_section`.`type`) AS `type`, (`page_section`.`content`) AS `content`, (`page_section`.`publish`) AS `publish`, (`page_section`.`discard`) AS `discard`, (`page_section`.`updated`) AS `updated`, (`page`.`name`) AS `page_name` FROM `page_section` INNER JOIN `page` ON `page`.`id` = `page_section`.`page_id` AND `page`.`discard` IS FALSE AND `page`.`publish` IS TRUE WHERE `page_section`.`discard` IS FALSE AND `page_section`.`publish` IS TRUE AND `page_section`.`page_id` = 93 ORDER BY `page_section`.`ordinal` ASC, `page_section`.`id` ASC
Command completed in 0.0011110305786133 seconds - 0 row(s) affected.
SELECT (`notice`.`id`) AS `id`, (`notice`.`ordinal`) AS `ordinal`, (`notice`.`name`) AS `name`, (`notice`.`title`) AS `title`, (`notice`.`content`) AS `content`, (`notice`.`image`) AS `image`, (`notice`.`button_text`) AS `button_text`, (`notice`.`button_link`) AS `button_link`, (`notice`.`position`) AS `position`, (`notice`.`icon`) AS `icon`, (`notice`.`publish_date`) AS `publish_date`, (`notice`.`publish_until`) AS `publish_until`, (`notice`.`publish`) AS `publish`, (`notice`.`discard`) AS `discard`, (`notice`.`updated`) AS `updated` FROM `notice` WHERE `notice`.`discard` IS FALSE AND `notice`.`publish` IS TRUE AND `notice`.`publish_until` >= CURRENT_DATE ORDER BY `notice`.`publish_date` DESC, `notice`.`id` DESC LIMIT 1
Command completed in 0.0010781288146973 seconds - 0 row(s) affected.
SELECT (`page_section`.`id`) AS `id`, (`page_section`.`page_id`) AS `page_id`, (`page_section`.`ordinal`) AS `ordinal`, (`page_section`.`type`) AS `type`, (`page_section`.`content`) AS `content`, (`page_section`.`publish`) AS `publish`, (`page_section`.`discard`) AS `discard`, (`page_section`.`updated`) AS `updated`, (`page`.`name`) AS `page_name` FROM `page_section` INNER JOIN `page` ON `page`.`id` = `page_section`.`page_id` AND `page`.`discard` IS FALSE AND `page`.`publish` IS TRUE WHERE `page_section`.`discard` IS FALSE AND `page_section`.`publish` IS TRUE AND `page_section`.`page_id` = 93 ORDER BY `page_section`.`ordinal` ASC, `page_section`.`id` ASC
Command completed in 0.00071001052856445 seconds - 0 row(s) affected.
SELECT (`banner`.`id`) AS `id`, (`banner`.`name`) AS `name`, (`banner`.`url`) AS `url`, (`banner`.`image`) AS `image`, (`banner`.`image_alt`) AS `image_alt`, (`banner`.`publish`) AS `publish`, (`banner`.`discard`) AS `discard`, (`banner`.`updated`) AS `updated`, (`page_banner`.`ordinal`) AS `ordinal` FROM `banner` INNER JOIN `page_banner` ON `page_banner`.`banner_id` = `banner`.`id` AND `page_banner`.`page_id` = 93 WHERE `banner`.`discard` IS FALSE AND `banner`.`publish` IS TRUE AND `banner`.`id` IN ( SELECT `banner_id` FROM `page_banner` WHERE `page_banner`.`page_id` = 93) ORDER BY `page_banner`.`ordinal` ASC, `banner`.`name` ASC
Command completed in 0.0011258125305176 seconds - 0 row(s) affected.