• An Epsode consists of a single or mutliple pages.
  • Assets.zip contains the images, audio etc of pages
  • A Book is a single Kwik project. All the pages are bandled as a book asset. The assets.zip of a Book contains the build4/assets folder.
  • Book{NUM} means Book01, Book02, ...
  • Table of content(TOC) page shows the thumnail of Espodes or Books
  • BookShelf type. You can choose one of them to make a book shelf app.
    • pages
    • embedded
    • template

Project properites - Book Shelf Project

  • Advanced Settings > Book Shelf Project
    • pages
    • embedded
    • template
    • Downlodable book project. this checkbox is only applicable for a book project to be embedded in the master book shelf app.

BookShelf.zip contains the following project folders. Book01 and Book02 projects are shared for BookShelfEmbedded and BookShelfTmplt.


  • Book01
  • Book02
  • BookServer
  • BookShelfEmbedded
  • BookShelfPages
  • BookShelfTmplt
  • BookTOC


A single Kwik project contains multiple epsodes. the page asset of each epsode is downlodable.

1 Shelf.psd table of contents, user to read an epsode or to purchase an epsode free
2 ep01.psd Epsode01 free
3 ep02_info.psd Epsode02 Purchase Infomation free
4 ep02_1 Epsode02-1 paied
5 ep02_2 Epsode02-2 paied
6 ep03 Epsode03 paied


Multile Kwik projects are bandled with KwikShelf plugin. BookTOC project shows the thumnail of books. BookTOC and Book{Num} projects are compiled with KwikShelf plugin. The assets of Book{Num} are downloadble.

  • Master project with KwikShelf. This is not a Kwik project. It is a normal corona SDK project

    • copy.bat(WIN), copy.command(MAC) to copy the build4 folders of BOOK projects to the master project.

      MyCopy Book01 book01
      MyCopy Book02 book02
  • BookTOC project

1 Shelf.psd table of contents for books
2 INFO.psd a Book's Info is loaded
  • Book{Num} project
1 page1.psd
2 page2.psd
3 page3..psd
.. ... ... ...


the master project consists of TOC, INFO and template scenes. The assets from a Book project are loaded to the master project. Each page of a Book project is associated with one of the template scene of the master.

1 Shelf.psd table of contents for books
2 INFO.psd a Book's Info is loaded
3 title.psd template scene for book's title page
4 pageA template scene A
5 pageB template scene B
6 pageC template scene C
  • Book{Num} project
1 page1.psd loaded to title scene
2 page2.psd loaded to scene A
3 page3..psd loaded to scene B
.. ... ... ...

after published, build4/model.lua must be editted for the pages to be associated with the template scene of the master . The detail is described in Tmplt - Book. This model.json tells which tmplt page of the master is associated with a page of Book{num} project

BookServer - Utility to make assets.zip

the follwoing files are used to produce the assets.zip files by zipping, copying&pasting the expected folders. You need to edit each file manually to assign a epsode or book name to the variable of scripts

  • BookServer
    • copyright.txt
    • copy_pages.bat, copy_pages.command for BookShelfPages
    • copy_books.bat, copy_books.command for BookShelfEmbedded or BookShelfTmplt


MyCopy Epsode02 4
MyCopy Epsode02 5
MyCopy Epsode03 6

embedded or tmplt


MyCopy Book01 book01
MyCopy Book02 book02

these files above are mainly used after each project is published, the details are desribed in the sub sections. The table below shows the differences. As seen, Embedded and Tmplt are using same files except the copy.bat, copy.command at the bottom of the table.


  • Shelf.psd shows the table of content that shows the thumbnail of epsodes or books
  • Info.psd shows the infomration of one epsode or one book when user clicks the epdode/book icon of the thumbnail on Shelf.psd
  • Book{Num} project is for Embedded or Tmplt version of Bookshelf. Each images of Book(Num)'s pages are zipped. It is donwnloaded to the master shelf app.
  • BookSheflEmbedded uses KwikShekf.plugin. It controls TOC, BOOK{Nm} project.


please read the following information on Monetization and IAP setting&testing.

Kwik' bookshelf implementation does not have a server-side receipt verification. By adding external codes of your own, you may send a product ID and a user unique ID to your server that manages the receipt veification with Apple/Google/Amazon service and controls the downloadable contents.

these Corona APIs are not used in Kwik' bookshelf implementation currently. You may add external codes for them. Or please contact me for the feature request if you need them.

  • iOS: store.canMakePurchases
  • Google: event.transaction.state with "refunded"
  • Amazon: store.isSandboxMode

results matching ""

    No results matching ""