igsslm 0.1.4b0
Site Log Manager (SLM)
The Site Log Manager (SLM) is a web platform that aims to provide:
GNSS Site meta data (site log) management with a moderation workflow.
Support for multiple organizations and networks to be managed in an access controlled way.
Full legacy site log format support (both import and export).
Full GeodesyML support (both import and export).
JSON renderings of meta data.
Point-and-click graphical editing of site log data.
Public RESTful api for searching site log data.
Authenticated RESTful api for updating site log data.
Full access to the historical record.
Visualizations of networks and site information.
Configurable data validation that goes above and beyond schema validation.
Image and file attachments to sites.
A no-fork extensible architecture that allows organizations to modify out-of-the box
behavior with plugins.
This code base has reached beta-maturity but is still undergoing rapid development. Check back soon
for new documentation and updates.
Table of Contents
Design
Stack
Organization
Design
SLM is built in Python using the Django website development framework.
Django is well documented. A basic understanding of how it works is helpful to understand how SLM is
put together. In addition to the good intro tutorials, it's
helpful to understand how reusable Django apps work, how
settings files work and how
management commands work.
Stack
Django can be served behind many http servers. A common production environment uses Apache
managing Django as a WSGI daemon, but
another common setup involves proxying a gunicorn instance behind nginx.
In addition to Django, other critical components of the software stack are listed in the table below. Not all Python
dependencies are listed because many are incidental.
Dependency
Description
PostgreSQL
Relation database management system
Django
Website development framework
jQuery
Javascript DOM navigation library
DataTables
Javascript tables library
Bootstrap
CSS framework
djangorestframework
RESTful API framework for Django
django-split-settings
Composite settings files for Django
django_compressor
Static file compression and management
memcached
Memory object caching system
django-render-static
Static file rendering, javascript urls
django-debug-toolbar
Debugging components for Django sites (test only)
Organization
Environment & Setup
pyenv is not strictly required, but it is highly recommended to help manage multiple
local Python installations and keep environments clean. Python 3.8+ is required.
Poetry is used for dependency and package management.
SLM requires PostgresSQL along with the PostGIS extension that enables geographic queries to be run directly by the database.
RDBMS
Minimum Version
Management Utilities
PostgreSQL
12
PgAdmin
For personal and professional use. You cannot resell or redistribute these repositories in their original state.
There are no reviews.