Tryton components - What is needed for a functional system

Tryton Components Overview

A Tryton instance is composed of the trytond server connected to a database software. One might want to interact with the system using a client.

It is not the scope of this how-to to be exhaustive. For that official documentation should be consulted.

Database

Every Tryton instance needs to be configured with one of the following database software:

PostgreSQL

It is recommended to use PostgreSQL for production systems, which is supported through psycopg2.

Sqlite

Sqlite is a database in a file. This database is very convenient for testing, but should not be used for production.
This database software is the easiest to install and is supported out of the box.

Server

Also known as: trytond, tryton daemon.

Trytond, the server is the core of Tryton where all the business logic and data processing happens.
It connects to the database, it executes modules with business logic and even includes a web server that can be used for testing and debugging. It may chose to speak RPC with a client after successful authentication.

Each instance must use one database software, but may have one or more databases where active module configuration and business data is stored. There is probably not any point in calling a system without trytond a Tryton system.

See the trytond documentation.

Client

This is the component that the user will most likely be interacting with while using the system.
The version needs to be compatible with the server, ex. tryton 7.0.x should be used with trytond 7.0.x.
In order to interact with the trytond server you will generally need one of the following clients:

Tryton Client

Also known as: Desktop Client, GTK Client. Note that the whole project has the same name as the desktop client.

This is the standard desktop program used to connect to the trytond server.
The tryton client is a python application, and exists packaged as a Windows application, flatpak, MacOS, but can also be installed using pip or run from source.

See tryton documentation for information regarding installation and usage.

SAO

Also known as: Web client

SAO Web client features most of the functionality of the GTK Client, can be accessed using a modern web browser and does not need to be installed on the client computer. This is very convenient for mobile use.

SAO may be tested at the tryton demo. Username demo for English.

Proteus

Also known as: Scripting client, Console client.

Proteus enables interaction with trytond by python program/script.
For example the country module includes two scripts for importing countries and postal codes.

See proteus documentation.

Other options

It is also possible to interact with trytond by serving content by user application, or even connect to the server by a custom Javascript application that speaks RPC.
Tryton-flask may be used to create html pages from tryton.
In this case generally you are on your own and should know what you are doing :slight_smile:

Get Tryton

See Tryton - Get Tryton, Docker how-to or using a hosted instance.

1 Like

For me it does not match as an howto target.
Indeed I think existing place may be improved to include or clarify some of the information. Otherwise it is more a kind of personal board message.