///////////////////////////////////////////////////////////////
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 *
 *   http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.
///////////////////////////////////////////////////////////////

[[preface, Preface]]
= Preface =

This is the reference manual for Polygene™ version {polygene-version}, written by members of the Polygene™ Community.

The main parts of the manual are:

* <<introduction>> -- introducing Composite Oriented Programming concepts and Polygene.
* <<tutorials>> -- learn how to use Polygene.
* <<core-api>> -- detailed information on how to use Polygene.
* <<libraries>> -- detailed information on the many libraries available for Polygene.
* <<extensions>> -- detailed information each of the Polygene™ extensions, such as entity stores,
indexing, caching and runtime metrics.

The material is practical, technical, and focused on answering specific questions. 
It addresses how things work, what to do and what to avoid to successfully use Polygene™ in domain rich applications.
 
The goal is to be thumb-through and rule-of-thumb friendly.

Each section should stand on its own, so you can hop right to whatever interests you.
When possible, the sections distill "rules of thumb" which you can keep in mind whenever you wander out of the house
without this manual in your back pocket.

The included code examples are executed when Polygene™ is built and tested.

_Who should read this?_

The topics should be relevant to architects, model designers and developers.

