Documentation for the various components of FOLIO is in continuous development. Since the system is composed of many separate components, each component is documented individually. The best places to start are the FOLIO Developer’s Curriculum, which is a series of self-paced or instructor-guided lessons, and the early chapters of the Okapi Guide and Reference, which describe the system as a whole and explain how the parts fit together.
In the context of those early chapters, you may then wish to go on to:
Community and contribution
The community section explains how to be involved, provides the contribution guidelines, lists the various collaboration tools and has some recommendations about when to use each.
The FOLIO Developer’s Curriculum is a series of lessons that can be followed on your own or can form the basis of an instructor-led workshop.
The most important technical document is the Okapi Guide and Reference, which after the introductory sections already described, goes into detail about the Okapi API Gateway that controls a FOLIO system.
With that background understanding, see the documentation for each server-side module, especially RAML Module Builder (RMB).
The FOLIO user-interface toolkit is called Stripes. It is described in the Stripes Core README, which leads to the related documentation.
With that background understanding, see the documentation for each client-side module, especially the “ui-users”.
The okapi-stripes is a special Okapi module used to generate Stripes-based UIs for individual FOLIO tenants.
Running a complete system
The document Running a complete FOLIO system explains ways to enable a development system running the Okapi gateway, various server-side modules, sample data, and the Stripes UI development server. It goes on to explain another way to configure modules using the Okapi Console front-end.
Use folio-ansible for a quick-start FOLIO installation as a virtual machine using Vagrant and Ansible. This also provides various pre-built “black boxes” including “folio/stable” and “folio/testing”. The current built boxes are also available to download from Vagrant Cloud. The list of module versions for each box is shown in its change-log.
- Background orientation
- Setup and configuration
- Getting started
- Reference documentation
- Fundamental documentation
- Development tips
- Development management
- Other topics
Refer to the Guidelines section.
Other orientation guides:
- Navigation of commits and CI via GitHub and Jenkins.
- Search dev.folio.org and other search and report facilities.
Setup and configuration
- Some tips to assist developers to configure their local workstation setup.
- Built artifacts – released and snapshot FOLIO artifacts in various formats. Configurations for accessing.
- Source code – explanation of each repository.
Refer to the Start section.
- The Commence a module - structure and configuration guide explains a consistent layout for back-end and front-end modules.
- Overiew of all technical reference documentation.
- The set of automatically generated API documentation.
These are listed in the Start section.
- Manage notifications to keep abreast.
- Conduct troubleshooting.
- Code analysis and linting facilities explains ESLint, SonarQube, other lint tools, and preparing for pull requests.
- For Contextual Query Language (CQL) examples, see the Glossary, the FOLIO CQL to PostgreSQL JSON converter, the API docs, and the debug output for tests in each backend module.
- Use raml-cop to assess RAMLs, schema, and examples. A guide to its use with some explanations of its messages.
- Conduct cross-module joins via their APIs.
- How to check for a valid UUID.
- The FOLIO Developer’s Curriculum is a series of lessons that can be followed on your own or can form the basis of an instructor-led workshop.
- Release procedures.
- Search and report facilities (e.g. open pull requests needing review).
- Create a new FOLIO module and do initial setup.
- The FOLIO Project Roadmap including the development and milestone plan for Version 1 and the feature backlog, and the FOLIO Development Process Overview, and other important documents and resources are listed at the Wiki.
- Which forum to use for communication.
- Special Interest Groups (SIGs).
- Guidelines for Contributing Code.