SquareBracketAssociates / EnterprisePharo

A new book describing Pharo librairies to make business.
http://books.pharo.org/enterprise-pharo/
Other
71 stars 24 forks source link
book documentation enterprise framework pharo web

Enterprise Pharo (english version) Build Status Build Status

How to write a book

This book is written in Pillar markup. If you are not familiar with it please read the Pillar chapter.

Prerequisites

Install LaTeX

The book requires TeX Live 2015 to generate the PDFs. Linux distributions often require to install several packages, please refer to the SBAbook description.

Mac OS X users: download and install MacTeX (the 2.4Gb MacTeX.pkg file), and add its binaries to your system path (don't forget to start a new terminal session, for the path changes to take effect):

echo /usr/texbin > TeX
sudo mv TeX /etc/paths.d

Download Pillar

Run ./download.sh to obtain the required Pillar executable. This will also download the required Pharo image and VM and install it locally in the book's directory.

Generating the book

To generate the individual book chapters, execute ./compile.sh. This will place the rendered chapters in book-result/.

To compose the chapters into the full book, after running ./compile.sh, execute ./compileBook.sh.

To generate a single chapter (for example, the Teapot chapter):

./pillar export Teapot/Teapot.pillar
bash pillarPostExport.sh

Adding a chapter

To add a chapter create a directory for it (named, e.g., Example) and put there a .pillar file (named, e.g., Example.pillar) which will contain the chapter itself. Put images in the figures subdirectory of the new chapter directory.

Add your chapter to:

Caveats

Chapters

Chapter Latest Link reference
1 - Teapot html pdf Chapter *@cha:teapot* link: *Teapot>../Teapot/Teapot.pillar@cha:teapot*
2 - Handling CSV with NeoCSV html pdf Chapter *@cha:neoCSV* link: *NeoCSV>../NeoCSV/NeoCSV.pillar@cha:neoCSV*
3 - JSON html pdf Chapter *@cha:JSON* link: *JSON>../NeoJSON/NeoJSON.pillar@cha:JSON*
4 - STON: a Smalltalk Object Notation html pdf Chapter *@cha:ston* link: *STON>../STON/STON.pillar@cha:ston*
5 - Serializing Complex Objects with Fuel html pdf Chapter *@cha:fuel* link: *Fuel>../Fuel/Fuel.pillar@cha:fuel*
6 - Persisting Objects with Voyage html pdf Chapter *@cha:voyage* link: *Voyage>../Voyage/Voyage.pillar@cha:voyage*
7 - Mustache Templates for Pharo html pdf Chapter *@cha:mustache* link: *Mustache>../Mustache/Mustache.pillar@cha:mustache*
8 - Cascading Style Sheets with RenoirSt html pdf Chapter *@cha:renoirst* link: *RenoirST>../RenoirST/RenoirST.pillar@cha:renoirst*
9 - Documenting your Project with Pillar html pdf Chapter *@cha:pillar* link: *Pillar>../PillarChap/Pillar.pillar@cha:pillar*
10 - Generate PDF documents with Artefact html pdf Chapter *@cha:artefact* link: *Artefact>../Artefact/Artefact.pillar@cha:artefact*
11 - Character Encoding and Resource Meta Description html pdf Chapter *@cha:zincEncoding* link: *Zinc Encoding Meta>../Zinc-Encoding-Meta/Zinc-Encoding-Meta.pillar@cha:zincEncoding*
12 - Zinc HTTP: The Client-side html pdf Chapter *@cha:zinc-client* link: *Zinc Client>../Zinc-HTTP-Client/Zinc-HTTP-Client.pillar@cha:zinc-client*
13 - Zinc HTTP: The server side html pdf Chapter *@cha:zinc-server* link: *Zinc Server>../Zinc-HTTP-Server/Zinc-HTTP-Server.pillar@cha:zinc-server*
14 - REST Web Services html pdf Chapter *@cha:zinc-rest* link: *Zinc Rest>../Zinc-REST/Zinc-REST.pillar@cha:zinc-rest*
15 - Building and deploying your first web app with Pharo html pdf Chapter *@cha:webApp* link: *WebApp>../WebApp/WebApp.pillar@cha:webApp*
16 - WebSockets html pdf Chapter *@cha:webSockets* link: *WebSockets>../WebSockets/WebSockets.pillar@cha:webSockets*

Tools

There are mods/bundles/packages for text editors, that provide improvements for pillar files editing: