diff --git a/.readthedocs.yaml b/.readthedocs.yaml new file mode 100644 index 0000000..9138a7f --- /dev/null +++ b/.readthedocs.yaml @@ -0,0 +1,13 @@ +version: "2" + +build: + os: "ubuntu-22.04" + tools: + python: "3.10" + +python: + install: + - requirements: docs/requirements.txt + +sphinx: + configuration: docs/source/conf.py diff --git a/docs/Makefile b/docs/Makefile new file mode 100644 index 0000000..d0c3cbf --- /dev/null +++ b/docs/Makefile @@ -0,0 +1,20 @@ +# Minimal makefile for Sphinx documentation +# + +# You can set these variables from the command line, and also +# from the environment for the first two. +SPHINXOPTS ?= +SPHINXBUILD ?= sphinx-build +SOURCEDIR = source +BUILDDIR = build + +# Put it first so that "make" without argument is like "make help". +help: + @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) + +.PHONY: help Makefile + +# Catch-all target: route all unknown targets to Sphinx using the new +# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS). +%: Makefile + @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) diff --git a/docs/make.bat b/docs/make.bat new file mode 100644 index 0000000..9534b01 --- /dev/null +++ b/docs/make.bat @@ -0,0 +1,35 @@ +@ECHO OFF + +pushd %~dp0 + +REM Command file for Sphinx documentation + +if "%SPHINXBUILD%" == "" ( + set SPHINXBUILD=sphinx-build +) +set SOURCEDIR=source +set BUILDDIR=build + +if "%1" == "" goto help + +%SPHINXBUILD% >NUL 2>NUL +if errorlevel 9009 ( + echo. + echo.The 'sphinx-build' command was not found. Make sure you have Sphinx + echo.installed, then set the SPHINXBUILD environment variable to point + echo.to the full path of the 'sphinx-build' executable. Alternatively you + echo.may add the Sphinx directory to PATH. + echo. + echo.If you don't have Sphinx installed, grab it from + echo.http://sphinx-doc.org/ + exit /b 1 +) + +%SPHINXBUILD% -M %1 %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O% +goto end + +:help +%SPHINXBUILD% -M help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O% + +:end +popd diff --git a/docs/requirements.txt b/docs/requirements.txt new file mode 100644 index 0000000..53fc1f3 --- /dev/null +++ b/docs/requirements.txt @@ -0,0 +1,2 @@ +sphinx==7.1.2 +sphinx-rtd-theme==1.3.0rc1 diff --git a/docs/source/api.rst b/docs/source/api.rst new file mode 100644 index 0000000..ec94338 --- /dev/null +++ b/docs/source/api.rst @@ -0,0 +1,7 @@ +API +=== + +.. autosummary:: + :toctree: generated + + lumache diff --git a/docs/source/conf.py b/docs/source/conf.py new file mode 100644 index 0000000..6d911c5 --- /dev/null +++ b/docs/source/conf.py @@ -0,0 +1,35 @@ +# Configuration file for the Sphinx documentation builder. + +# -- Project information + +project = 'GeoSync' +copyright = '2024, Cited, Inc.' +author = 'Graziella' + +release = '0.1' +version = '0.1.0' + +# -- General configuration + +extensions = [ + 'sphinx.ext.duration', + 'sphinx.ext.doctest', + 'sphinx.ext.autodoc', + 'sphinx.ext.autosummary', + 'sphinx.ext.intersphinx', +] + +intersphinx_mapping = { + 'python': ('https://docs.python.org/3/', None), + 'sphinx': ('https://www.sphinx-doc.org/en/master/', None), +} +intersphinx_disabled_domains = ['std'] + +templates_path = ['_templates'] + +# -- Options for HTML output + +html_theme = 'sphinx_rtd_theme' + +# -- Options for EPUB output +epub_show_urls = 'footnote' diff --git a/docs/source/daemons.rst b/docs/source/daemons.rst new file mode 100644 index 0000000..f7f2a25 --- /dev/null +++ b/docs/source/daemons.rst @@ -0,0 +1,76 @@ +Daemons +===== + +.. _installation: + +Installation +------------ + +To use Lumache, first install it using pip: + + +Creating recipes +---------------- + +.. image:: images/daemons.png +now +Dashboard.png +images +now +daemons.png +images +now +data-1.png +images +now +data-2.png +images +now +data-3.png +images +now +data-4.png +images +now +geoserver-1.png +images +now +groups.png +images +now +project-1.png +images +now +project-2.png +images +now +project-3.png +images +now +servers.png +images +now +services.png +images +now +users.png + + + +To retrieve a list of random ingredients, +you can use the ``lumache.get_random_ingredients()`` function: + +.. autofunction:: lumache.get_random_ingredients + +The ``kind`` parameter should be either ``"meat"``, ``"fish"``, +or ``"veggies"``. Otherwise, :py:func:`lumache.get_random_ingredients` +will raise an exception. + +.. autoexception:: lumache.InvalidKindError + +For example: + +>>> import lumache +>>> lumache.get_random_ingredients() +['shells', 'gorgonzola', 'parsley'] + diff --git a/docs/source/dashboard.rst b/docs/source/dashboard.rst new file mode 100644 index 0000000..1316af6 --- /dev/null +++ b/docs/source/dashboard.rst @@ -0,0 +1,34 @@ +Dashboard +===== + +.. _installation: + +Installation +------------ + +To use Lumache, first install it using pip: + +.. code-block:: console + + (.venv) $ pip install lumache + +Creating recipes +---------------- + +To retrieve a list of random ingredients, +you can use the ``lumache.get_random_ingredients()`` function: + +.. autofunction:: lumache.get_random_ingredients + +The ``kind`` parameter should be either ``"meat"``, ``"fish"``, +or ``"veggies"``. Otherwise, :py:func:`lumache.get_random_ingredients` +will raise an exception. + +.. autoexception:: lumache.InvalidKindError + +For example: + +>>> import lumache +>>> lumache.get_random_ingredients() +['shells', 'gorgonzola', 'parsley'] + diff --git a/docs/source/data.rst b/docs/source/data.rst new file mode 100644 index 0000000..091c7c1 --- /dev/null +++ b/docs/source/data.rst @@ -0,0 +1,34 @@ +Data +===== + +.. _installation: + +Installation +------------ + +To use Lumache, first install it using pip: + +.. code-block:: console + + (.venv) $ pip install lumache + +Creating recipes +---------------- + +To retrieve a list of random ingredients, +you can use the ``lumache.get_random_ingredients()`` function: + +.. autofunction:: lumache.get_random_ingredients + +The ``kind`` parameter should be either ``"meat"``, ``"fish"``, +or ``"veggies"``. Otherwise, :py:func:`lumache.get_random_ingredients` +will raise an exception. + +.. autoexception:: lumache.InvalidKindError + +For example: + +>>> import lumache +>>> lumache.get_random_ingredients() +['shells', 'gorgonzola', 'parsley'] + diff --git a/docs/source/frontend.rst b/docs/source/frontend.rst new file mode 100644 index 0000000..01a7690 --- /dev/null +++ b/docs/source/frontend.rst @@ -0,0 +1,34 @@ +Front End +===== + +.. _installation: + +Installation +------------ + +To use Lumache, first install it using pip: + +.. code-block:: console + + (.venv) $ pip install lumache + +Creating recipes +---------------- + +To retrieve a list of random ingredients, +you can use the ``lumache.get_random_ingredients()`` function: + +.. autofunction:: lumache.get_random_ingredients + +The ``kind`` parameter should be either ``"meat"``, ``"fish"``, +or ``"veggies"``. Otherwise, :py:func:`lumache.get_random_ingredients` +will raise an exception. + +.. autoexception:: lumache.InvalidKindError + +For example: + +>>> import lumache +>>> lumache.get_random_ingredients() +['shells', 'gorgonzola', 'parsley'] + diff --git a/docs/source/geoserver.rst b/docs/source/geoserver.rst new file mode 100644 index 0000000..988a99c --- /dev/null +++ b/docs/source/geoserver.rst @@ -0,0 +1,34 @@ +GeoServer +===== + +.. _installation: + +Installation +------------ + +To use Lumache, first install it using pip: + +.. code-block:: console + + (.venv) $ pip install lumache + +Creating recipes +---------------- + +To retrieve a list of random ingredients, +you can use the ``lumache.get_random_ingredients()`` function: + +.. autofunction:: lumache.get_random_ingredients + +The ``kind`` parameter should be either ``"meat"``, ``"fish"``, +or ``"veggies"``. Otherwise, :py:func:`lumache.get_random_ingredients` +will raise an exception. + +.. autoexception:: lumache.InvalidKindError + +For example: + +>>> import lumache +>>> lumache.get_random_ingredients() +['shells', 'gorgonzola', 'parsley'] + diff --git a/docs/source/groups.rst b/docs/source/groups.rst new file mode 100644 index 0000000..0411a53 --- /dev/null +++ b/docs/source/groups.rst @@ -0,0 +1,34 @@ +Groups +===== + +.. _installation: + +Installation +------------ + +To use Lumache, first install it using pip: + +.. code-block:: console + + (.venv) $ pip install lumache + +Creating recipes +---------------- + +To retrieve a list of random ingredients, +you can use the ``lumache.get_random_ingredients()`` function: + +.. autofunction:: lumache.get_random_ingredients + +The ``kind`` parameter should be either ``"meat"``, ``"fish"``, +or ``"veggies"``. Otherwise, :py:func:`lumache.get_random_ingredients` +will raise an exception. + +.. autoexception:: lumache.InvalidKindError + +For example: + +>>> import lumache +>>> lumache.get_random_ingredients() +['shells', 'gorgonzola', 'parsley'] + diff --git a/docs/source/images/Dashboard-2.png b/docs/source/images/Dashboard-2.png new file mode 100644 index 0000000..5393122 Binary files /dev/null and b/docs/source/images/Dashboard-2.png differ diff --git a/docs/source/images/Dashboard.png b/docs/source/images/Dashboard.png new file mode 100644 index 0000000..6e95d3a Binary files /dev/null and b/docs/source/images/Dashboard.png differ diff --git a/docs/source/images/daemons.png b/docs/source/images/daemons.png new file mode 100644 index 0000000..89a80ef Binary files /dev/null and b/docs/source/images/daemons.png differ diff --git a/docs/source/images/data-1.png b/docs/source/images/data-1.png new file mode 100644 index 0000000..5a0aa12 Binary files /dev/null and b/docs/source/images/data-1.png differ diff --git a/docs/source/images/data-2.png b/docs/source/images/data-2.png new file mode 100644 index 0000000..6195174 Binary files /dev/null and b/docs/source/images/data-2.png differ diff --git a/docs/source/images/data-3.png b/docs/source/images/data-3.png new file mode 100644 index 0000000..795db17 Binary files /dev/null and b/docs/source/images/data-3.png differ diff --git a/docs/source/images/data-4.png b/docs/source/images/data-4.png new file mode 100644 index 0000000..e7dd695 Binary files /dev/null and b/docs/source/images/data-4.png differ diff --git a/docs/source/images/geoserver-1.png b/docs/source/images/geoserver-1.png new file mode 100644 index 0000000..8f649a3 Binary files /dev/null and b/docs/source/images/geoserver-1.png differ diff --git a/docs/source/images/groups.png b/docs/source/images/groups.png new file mode 100644 index 0000000..aa24449 Binary files /dev/null and b/docs/source/images/groups.png differ diff --git a/docs/source/images/project-1.png b/docs/source/images/project-1.png new file mode 100644 index 0000000..43efb0f Binary files /dev/null and b/docs/source/images/project-1.png differ diff --git a/docs/source/images/project-2.png b/docs/source/images/project-2.png new file mode 100644 index 0000000..c9f882a Binary files /dev/null and b/docs/source/images/project-2.png differ diff --git a/docs/source/images/project-3.png b/docs/source/images/project-3.png new file mode 100644 index 0000000..00884e9 Binary files /dev/null and b/docs/source/images/project-3.png differ diff --git a/docs/source/images/servers.png b/docs/source/images/servers.png new file mode 100644 index 0000000..d0a8e49 Binary files /dev/null and b/docs/source/images/servers.png differ diff --git a/docs/source/images/services.png b/docs/source/images/services.png new file mode 100644 index 0000000..6e31f8d Binary files /dev/null and b/docs/source/images/services.png differ diff --git a/docs/source/images/users.png b/docs/source/images/users.png new file mode 100644 index 0000000..6d479bb Binary files /dev/null and b/docs/source/images/users.png differ diff --git a/docs/source/index.rst b/docs/source/index.rst new file mode 100644 index 0000000..1067fd9 --- /dev/null +++ b/docs/source/index.rst @@ -0,0 +1,34 @@ +GeoSync Docs +=================================== + +**GeoSync** is a front end application for DB-Sync and GeoDiff +It syncronizes data from QGIS and Mergin Maps Server with PostGIS databases. + + +Check out the :doc:`usage` section for further information, including +how to :ref:`installation` the project. + +.. note:: + + This project is under active development. + +Contents +-------- + +.. toctree:: + + intro + dashboard + users + servers + projects + groups + daemons + services + geoserver + data + frontend + + + + diff --git a/docs/source/pojects.rst b/docs/source/pojects.rst new file mode 100644 index 0000000..2e40afb --- /dev/null +++ b/docs/source/pojects.rst @@ -0,0 +1,34 @@ +Projects +===== + +.. _installation: + +Installation +------------ + +To use Lumache, first install it using pip: + +.. code-block:: console + + (.venv) $ pip install lumache + +Creating recipes +---------------- + +To retrieve a list of random ingredients, +you can use the ``lumache.get_random_ingredients()`` function: + +.. autofunction:: lumache.get_random_ingredients + +The ``kind`` parameter should be either ``"meat"``, ``"fish"``, +or ``"veggies"``. Otherwise, :py:func:`lumache.get_random_ingredients` +will raise an exception. + +.. autoexception:: lumache.InvalidKindError + +For example: + +>>> import lumache +>>> lumache.get_random_ingredients() +['shells', 'gorgonzola', 'parsley'] + diff --git a/docs/source/servers.rst b/docs/source/servers.rst new file mode 100644 index 0000000..08a8b0c --- /dev/null +++ b/docs/source/servers.rst @@ -0,0 +1,23 @@ +Servers +===== + +.. _installation: + +Access +------------ + +You can access the Servers page via Servers on the left menu + + +Creating recipes +---------------- + +Here, you can add, edit, and delete servers. + +URL: The full url of your Mergin Maps server + +Username: An Admin username + +Password: An Admin password + + .. image:: images/servers.png diff --git a/docs/source/usage.rst b/docs/source/usage.rst new file mode 100644 index 0000000..924afcf --- /dev/null +++ b/docs/source/usage.rst @@ -0,0 +1,34 @@ +Usage +===== + +.. _installation: + +Installation +------------ + +To use Lumache, first install it using pip: + +.. code-block:: console + + (.venv) $ pip install lumache + +Creating recipes +---------------- + +To retrieve a list of random ingredients, +you can use the ``lumache.get_random_ingredients()`` function: + +.. autofunction:: lumache.get_random_ingredients + +The ``kind`` parameter should be either ``"meat"``, ``"fish"``, +or ``"veggies"``. Otherwise, :py:func:`lumache.get_random_ingredients` +will raise an exception. + +.. autoexception:: lumache.InvalidKindError + +For example: + +>>> import lumache +>>> lumache.get_random_ingredients() +['shells', 'gorgonzola', 'parsley'] + diff --git a/docs/source/users.rst b/docs/source/users.rst new file mode 100644 index 0000000..90e6f98 --- /dev/null +++ b/docs/source/users.rst @@ -0,0 +1,22 @@ +Users +===== + +.. _installation: + +Access +------------ + +To acces Users, click Users on the left menu: + + +Manage Users +---------------- + +You can add, edit, and delete users via the Users page. + + .. image:: images/users.png + + + + + diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..9772676 --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,8 @@ +[build-system] +requires = ["flit_core >=3.2,<4"] +build-backend = "flit_core.buildapi" + +[project] +name = "GeoSync" +authors = [{name = "AcuGIS", email = "hello@citedcorp.com"}] +dynamic = ["version", "description"]