Coder Social home page Coder Social logo

tudorbarascu / g3w-admin Goto Github PK

View Code? Open in Web Editor NEW

This project forked from g3w-suite/g3w-admin

0.0 1.0 0.0 209.7 MB

Server module for G3W-SUITE

License: Mozilla Public License 2.0

Python 32.15% CSS 5.54% HTML 13.61% JavaScript 42.27% PHP 1.10% Dockerfile 0.01% Shell 0.12% C# 0.38% Java 4.13% Go 0.12% Smarty 0.01% ASP.NET 0.23% SCSS 0.19% QML 0.15%

g3w-admin's Introduction

G3W-Suite CI Tests License

G3W-ADMIN

Admin server for G3W-SUITE written in Python, based on Django LTS (v3.2) and QGIS Server LTR (v3.34)

Admin GUI


Versions and Branches

Software releases follow theese main branches as described in the compatibility table:

Branch Python Django QGIS client First release Status
dev 3.10 3.2 3.34 dev Unreleased ⚠️️ Unstable
v.3.7.x 3.10 3.2 3.34 3.9.6 Dec 2023 🪲️ Bug fixing
v.3.6.x 3.10 3.2 3.28 3.8.15 May 2023 🪲️ Bug fixing
v.3.5.x 3.10 2.2 3.22 3.7 Nov 2022 🚨 End of Life
v.3.4.x 3.8 2.2 3.22 3.4 Mar 2022 🚨 End of Life
v.3.3.x 3.6 2.2 3.16 3.3 Sep 2021 🚨 End of Life
v.3.2.x 3.6 2.2 3.16 3.2 Apr 2021 🚨 End of Life
v.3.1.x 3.6 2.2 3.10 3.1 Nov 2020 🚨 End of Life
v.3.0.x 3.6 2.2 3.10 3.0 Nov 2020 🚨 End of Life
dj22-py3 3.6 2.2 🔗 🚨 End of Life
py2 2.7 1.11 🔗 🚨 End of Life

Project setup

Docker Compose

It's strongly recommended to follow the g3w-suite-docker installation instructions (which already bundles a full blown NGINX + PostgreSQL setup), as such installation method speed up development and deployment and would cause you fewer issues in terms of compatibility and portability in the short and long term.

Barebone server

If you will opt for the raw installation you will need to configure your own web server in order to run a Django project, some common setups are:

To figure out which to choose, see also: deploying django

Then in your development environment:

  1. download and install Node.js and Yarn
  2. get a Python version that is compatible with the table above
  3. install and activate a database that fits your needs
  4. (optional) install Paver for developing locally

After that you can clone this repository:

cd /path/to/your/development/workspace

git clone https://github.com/g3w-suite/g3w-admin.git --single-branch --branch dev ./g3w-admin

Create and activate virtualenv within your g3w-admin local repository:

cd ./g3w-admin

python3 -m venv --system-site-packages [--prompt g3w-admin] venv
# Linux / Mac OS
source venv/bin/activate

# Windows
.\venv\Scripts\activate

Create the following configuration file from the available template:

And check that the following parameters are set accordingly:

# /g3w-admin/g3w-admin/base/settings/local_settings.py

DATASOURCE_PATH     = '<static_path_to_gis_data_source>'
MEDIA_ROOT          = '<path_to_media_root>'
SESSION_COOKIE_NAME = '<unique_session_id>'
DATABASES           = {
    'default': {
        'ENGINE': 'django.contrib.gis.db.backends.postgis',
        'NAME': '<db_name>',
        'USER': '<db_user>',
        'PASSWORD': '<db_user_password>',
        'HOST': '<db_host>',
        'PORT': '<db_port>',
    }
}

Complete installation process by download all python and javascript dependencies and finalizing the django database setup:

paver install

If you don't want to use Paver, see also: manual installation steps


How to develop

You can start the built-in development server by using the following:

paver start
paver stop

If everything went fine, you can now visit your local development server URL to see changes:

http://localhost:8000

If you don't want to use Paver, see also: run g3w-suite


Plugins

Add-on modules are released according to django's python specifications on reusable apps.

The following packages are released as core applications:

Any additional package must be placed into the /g3w-admin/g3w-admin folder.


Testing

Automated tests are performed on both latest QGIS release and current QGIS LTR (v3.34) for any push event involving the dev branch.

The Dockerfile and docker-compose.yml files used to perform these tests are:

Execution log: github.com/g3w-suite/g3w-admin/actions

More info: test_runner.yml + build_suite.sh


FAQ

1. How can I translate this project?

Translations management is a part of the Django framework, all available translations are located in the /g3w-admin/locale folder.

Depending on the component you want to translate you can start by consulting one of the following:


Contributors

Translators


Compatibile with: Django version QGIS version


License: MPL-2

g3w-admin's People

Contributors

dependabot[bot] avatar elpaso avatar giohappy avatar leolami avatar luipir avatar moovida avatar pblottiere avatar raruto avatar tudorbarascu avatar volterra79 avatar wlorenzetti avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.