eg_developer_overview
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
eg_developer_overview [2017/03/01 11:54] – [Evergreen Developer Overview] rjs7 | eg_developer_overview [2022/02/10 13:34] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 6: | Line 6: | ||
- OpenSRF, forming the backend communication layer for Evergreen. Primarily dealt with via Perl modules, but also including C. | - OpenSRF, forming the backend communication layer for Evergreen. Primarily dealt with via Perl modules, but also including C. | ||
- PostgreSQL Database, both in database design and stored procedures. Most stored procedures are written in SQL, PL/pgSQL, or Perl. | - PostgreSQL Database, both in database design and stored procedures. Most stored procedures are written in SQL, PL/pgSQL, or Perl. | ||
- | - Template Toolkit/ | + | - Template Toolkit/ |
See also the [[https:// | See also the [[https:// | ||
+ | |||
===== OpenSRF and Services ===== | ===== OpenSRF and Services ===== | ||
Evergreen is built upon the Open Scalable Request Framework, or OpenSRF (pronounced "open surf" | Evergreen is built upon the Open Scalable Request Framework, or OpenSRF (pronounced "open surf" | ||
+ | |||
+ | |||
+ | * [[osrf-devel: | ||
+ | * [[osrf-devel: | ||
+ | * Blog entry: [[http:// | ||
==== OpenSRF Basics ==== | ==== OpenSRF Basics ==== | ||
Line 63: | Line 69: | ||
* open-ils.cstore (C) | * open-ils.cstore (C) | ||
* | * | ||
+ | * open-ils.ebook_api (added in 2.12) | ||
* open-ils.fielder (Perl, Public) | * open-ils.fielder (Perl, Public) | ||
* | * | ||
+ | * < | ||
+ | * Handles ingest of bibliographic records. Replaced by database triggers and stored procedures. | ||
+ | * open-ils.hold-targeter (added in 2.12) | ||
* open-ils.justintime (Perl, XML-RPC) | * open-ils.justintime (Perl, XML-RPC) | ||
* | * | ||
* open-ils.pcrud (C, Public) | * open-ils.pcrud (C, Public) | ||
- | * PCrud is a database search and retrieval service that checks and requires authentication tokens to control access to information. Unlike CStore it cannot " | + | * PCrud is a database search and retrieval service that checks and requires authentication tokens to control access to information. |
- | * open-ils.penalty (Perl) | + | * <del>open-ils.penalty (Perl)</ |
* A wrapper around the OpenILS:: | * A wrapper around the OpenILS:: | ||
* open-ils.permacrud (Perl, Public) | * open-ils.permacrud (Perl, Public) | ||
- | * | + | * A Perl authentication checking wrapper around CStore calls. |
+ | * See bug [[https:// | ||
+ | * open-ils.qstore | ||
+ | * Executes database queries that have been previously defined, in an abstract form, within the database itself. | ||
* open-ils.reporter (Perl, Public) | * open-ils.reporter (Perl, Public) | ||
* The Staff creation and query service for the reports system. | * The Staff creation and query service for the reports system. | ||
Line 179: | Line 192: | ||
==== JSPAC (no longer included as of Evergreen 2.9) ==== | ==== JSPAC (no longer included as of Evergreen 2.9) ==== | ||
- | To start with, at this point it is recommended that new features not be developed | + | The JSPAC was built on the JavaScript OpenSRF interfaces and built almost everything outside of the base page layouts client side. Search results and account information were populated via AJAX after the initial page load. This included use of the Dojo Toolkit, though |
- | The JSPAC is built on the JavaScript OpenSRF interfaces and builds almost everything outside of the base page layouts client side. Search results and account information are populated after the initial page load as the system makes backend calls with the AJAX technologies the browser supports. Development is thus more oriented towards JavaScript programming and XHTML pages than anything else. This includes use of the Dojo Toolkit, though for a number of reasons Evergreen is currently limited to the somewhat outdated Dojo version 1.3. | + | The JSPAC supported |
- | + | ||
- | Though JSPAC supports | + | |
===== Staff Client ===== | ===== Staff Client ===== | ||
- | Work on a browser-based staff client is [[dev: | + | The Evergreen |
+ | |||
+ | We are currently converting all the old Dojo interfaces into Angular (version 7+). After that, we will re-write the AngularJS interfaces as well. (See [[dev:browser_staff:angjs_to_ang_migration]] for the proposed timeline.) Development for the web Staff Client can involve Angular (using TypeScript), | ||
- | The full Staff Client is currently a XULRunner application built on the XULRunner 3 series, which is equivalent to the Firefox 3 series. The staff client is a combination of local and remote XUL pages, JavaScript, and the OPAC itself. It is compatible with both the JSPAC and the TPAC, and also loads a number of interfaces that work like the JSPAC and/or TPAC. Some of these interfaces can be easily used outside of the staff client itself, others expect to be loaded from within it. | + | **History** |
- | Development for the Staff Client | + | Circulation features were released as a preview with Evergreen 2.8(?), and the full browser client was released with Evergreen 3.0 in October 2017. XUL interfaces have been converted to AngularJS, while most Dojo interfaces were initially embedded in the web client as-is, with hopes to convert them to AngularJS or new Angular eventually. |
===== External Code - SIPServer ===== | ===== External Code - SIPServer ===== |
eg_developer_overview.1488387273.txt.gz · Last modified: 2022/02/10 13:34 (external edit)