Components of a Lino site¶
About sites and applications¶
- Lino site¶
An instance of a given Lino application running on a given server.
- Lino application¶
A database application that was developed using the Lino framework.
See also List of known Lino applications
Every Lino site is owned by its site operator who manages user accounts of their site and assigns permissions. The site operator owns the data on their site. The site operator designates a site maintainer who is responsible for installing and updating the software on the site.
A Lino site can be used either for internal use by your employees in your local network, or as a public website. All Lino sites have a similar, typical, look and feel, which is optimized for efficient daily usage.
Every Lino site has a web interface under a domain or subdomain name, a set of local settings and configuration files, and usually its own database. Multiple sites can share a same database in order to provide different front ends.
Every Lino site runs a given Lino application.
Every Lino application is a software product on its own. It has a given set of functionalities and can be recognized by its end users.
A same Lino application can potentially run on many sites. In that case the operators of these sites automatically have a common product carrier.
The product carrier of an application decides which features and functionalities are available in their application: the database structure (how data is stored), the view layouts (how end users see the data) and the actions (what users can do with the data).
Because Lino is Free Software, its source code is publicly available for everybody.
The Lino framework is stored on GitLab as a set of about 30 public code repositories.
We differentiate the following types of repositories: the Lino core, the Lino Extensions Library, a series of Lino applications, a series of front ends and a series of documentation trees.
See Repositories of the Lino framework for a more technical overview.
- source repository¶
A set of source files that is grouped together as a whole and published together with a version control system.
- source code¶
Content to be edited by a software developer and to be built (compiled) into an executable program file or consumable content (e.g. text, image, sound or video).
- source file¶
A file that contains source code.
Examples of source file types commonly used for building executable program code are
Some consumable content file formats commonly used in a Lino project are
- configuration file¶
A file that contains configuration settings to be read by a program.
- Lino core¶
A source repository containing core functionality used by every Lino application.
- Lino Extensions Library¶
A plugin library with shared plugins that are used by many Lino applications.
A module or logical part of an application which potentially can be shared among several applications.
- plugin library¶
A collection of plugins grouped into a single source repository and maintained by a given development provider.
- front end¶
A specialized plugin responsible to render the web interface of a Lino site.
A Lino site can be exposed with different front ends, using the same application code and database but different front ends.
Lino contains roughly 4500 source files with Python code (
.py) and 6500
source files with Sphinx code (
Some more jargon you might encounter when talking to a software developer:
- test suite¶
A set or source code files that don’t add any functionality and is used only for automated testing.