Skip to content

Commit

Permalink
Merge branch 'master' into patch-1
Browse files Browse the repository at this point in the history
  • Loading branch information
mbernasocchi authored Jul 17, 2024
2 parents 943be92 + 7e9b5ee commit ca21d83
Show file tree
Hide file tree
Showing 171 changed files with 2,395 additions and 556 deletions.
60 changes: 42 additions & 18 deletions .github/workflows/gh-pages.yml
Original file line number Diff line number Diff line change
@@ -1,32 +1,35 @@
name: gh-pages

on:
pull_request:
branches:
- master
push:
branches:
- master
schedule:
- cron: '30 1 * * *'
workflow_dispatch:

permissions:
contents: write

jobs:
translations:
runs-on: ubuntu-latest
if: (github.event_name == 'schedule' && github.repository == 'opengisch/QField-docs') || (github.event_name != 'schedule')
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1
uses: docker/setup-buildx-action@v3

- uses: actions/setup-python@v4
- uses: actions/setup-python@v5
with:
python-version: '3.10'
cache: 'pip'

- name: Install Python requirements
run: pip install -r requirements.txt
run: |
pip install -r requirements.txt
pip install -r requirements-dev.txt
- name: Install Python requirements insiders
run: pip install -r requirements-insiders.txt
Expand All @@ -35,36 +38,57 @@ jobs:

- name: Install Transifex client
run: |
curl -OL https://github.com/transifex/cli/releases/download/v1.3.1/tx-linux-amd64.tar.gz
curl -OL https://github.com/transifex/cli/releases/download/v1.6.10/tx-linux-amd64.tar.gz
tar -xvzf tx-linux-amd64.tar.gz
- name: Extract translatable content from mkdocs.yml config
run: ./utils/mkdocs_tx.py create_source

- name: Configure Transifex
run: |
python ./utils/transifex_utils.py
run: ./utils/transifex_utils.py
env:
TX_TOKEN: ${{ secrets.TX_TOKEN }}

- name: Push source files to Transifex
run: |
./tx push
if: contains(fromJSON('["push", "workflow_dispatch", "schedule"]'), github.event_name)
run: ./tx push
env:
TX_TOKEN: ${{ secrets.TX_TOKEN }}

- name: Get all languages
id: get_langs
uses: mikefarah/[email protected]
with:
cmd: yq '.plugins[] | .i18n.languages | select( . != null ) | map(.locale) | join(",")' mkdocs.yml

- name: Pull translations from Transifex
if: contains(fromJSON('["push", "workflow_dispatch", "schedule"]'), github.event_name) || ${{ github.event_name == 'pull_request' && github.repository == 'opengisch/QField-docs' }}
run: |
./tx pull -t -l en,de,fr,it,es,zh
./tx pull -t -l ${{ steps.get_langs.outputs.result }}
./tx status
env:
TX_TOKEN: ${{ secrets.TX_TOKEN }}

- name: Translate Mkdocs config
if: contains(fromJSON('["push", "workflow_dispatch", "schedule"]'), github.event_name) || ${{ github.event_name == 'pull_request' && github.repository == 'opengisch/QField-docs' }}
run: |
./utils/mkdocs_tx.py -s en update_config
./utils/mkdocs_tx_commit.sh
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: Build documentation
run: mkdocs build
env:
DEFAULT_LANGUAGE_ONLY: false

- name: Deploy to GitHub Pages
uses: JamesIves/github[email protected]
- uses: actions/upload-artifact@v4
if: ${{ github.event_name == 'pull_request' }}
with:
branch: gh-pages
clean: true
folder: site
name: docs
path: site
if-no-files-found: error

- name: Deploy to GitHub Pages
if: contains(fromJSON('["push", "workflow_dispatch", "schedule"]'), github.event_name)
run: mkdocs gh-deploy --force
35 changes: 35 additions & 0 deletions .github/workflows/lint-and-test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: lint-and-test

concurrency:
group: ${{ github.ref }}
cancel-in-progress: true

on:
pull_request:
push:
branches: [master]

jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v3
- uses: pre-commit/[email protected]

test-build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: "3.10"
cache: "pip"

- name: Install Python requirements
run: pip install -r requirements.txt

- name: Build documentation
run: mkdocs build
env:
DEFAULT_LANGUAGE_ONLY: true
14 changes: 0 additions & 14 deletions .github/workflows/pre-commit.yml

This file was deleted.

38 changes: 38 additions & 0 deletions .github/workflows/zoho.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
name: Update Zoho

on:
push:
branches:
- master

jobs:
update:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3

- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: "3.10"

- name: Install Python requirements
run: pip install -r requirements.txt

- name: Install dependencies
env:
MKDOCS_INSIDERS_TOKEN: ${{ secrets.MKDOCS_INSIDERS_TOKEN }}
run: |
pip install -r requirements.txt
# pip install -r requirements-insiders.txt
- name: Generate Zoho authentication credentials and update Zoho
env:
IS_PR: ${{ github.event_name == 'pull_request' }}
ZOHO_CONFIG_ID: ${{ secrets.ZOHO_CONFIG_ID }}
ZOHO_CONFIG_SECRET: ${{ secrets.ZOHO_CONFIG_SECRET }}
ZOHO_CONFIG_CODE: ${{ secrets.ZOHO_CONFIG_CODE }}
ZOHO_REFRESH_TOKEN: ${{ secrets.ZOHO_REFRESH_TOKEN }}

run: |
python ./utils/push_to_zoho.py
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,11 @@ opengisch_rsa.pub
*.DS_Store
.idea
.env
.venv/
Pipfile
# The pipfile will have the exact python version and breaks builds on other systems
Pipfile.lock
.transifexrc
/.python-version
.cache
.vscode
16 changes: 16 additions & 0 deletions .markdown-link-check-config.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
{
"replacementPatterns": [
{
"pattern": "#.*$",
"replacement": ""
},
{
"pattern": ".md$",
"replacement": ".en.md"
},
{
"pattern": ",[0-9]+px$",
"replacement": ""
}
]
}
5 changes: 5 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -8,3 +8,8 @@ repos:
- id: mixed-line-ending
args:
- "--fix=lf"
- repo: https://github.com/tcort/markdown-link-check
rev: v3.11.2
hooks:
- id: markdown-link-check
args: [-q, -c, .markdown-link-check-config.json]
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ feel free to use it accordingly and to contribute back your updates via a
[pull request](https://github.com/opengisch/QField-docs/pulls).


[cc-by-sa]: http://creativecommons.org/licenses/by-sa/4.0/
[cc-by-sa]: http://creativecommons.org/licenses/by-sa/4.0/ <!-- markdown-link-check-disable-line -->
[cc-by-sa-shield]: https://img.shields.io/badge/License-CC%20BY--SA%204.0-lightgrey.svg

[![CC BY-SA 4.0][cc-by-sa-shield]][cc-by-sa]
Expand Down Expand Up @@ -114,7 +114,7 @@ pipenv install -r requirements.txt
pipenv run mkdocs serve
```

The local doc will be available at http://localhost:8000.
The local doc will be available at http://localhost:8000. <!-- markdown-link-check-disable-line -->

#### Contribute
Before commiting, install [pre-commit](https://pre-commit.com/) to auto-format your contributions. You can install pre-commit for the current user with
Expand All @@ -130,7 +130,7 @@ Ensure [Docker](https://docs.docker.com/get-docker/) or [Podman](https://podman.
1. Clone this repository: git clone https://github.com/opengisch/QField-docs
2. Build the container: `docker build . -t qfield-docs`
3. Run it: `docker run -it -v ${PWD}/documentation:/opt/app/documentation -p 8000:8000 qfield-docs`
4. Point your browser to the serving endpoint at http://localhost:8000.
4. Point your browser to the serving endpoint at http://localhost:8000. <!-- markdown-link-check-disable-line -->

The server will automatically live-reload with any change made to the local `./documentation` directory.

Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added documentation/assets/images/attachments.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added documentation/assets/images/opacity-slider.png
Binary file modified documentation/assets/images/picture_path.png
Binary file added documentation/assets/images/print_atlas_menu.png
Binary file removed documentation/assets/images/print_document.jpg
Diff not rendered.
Binary file added documentation/assets/images/print_document.png
Binary file modified documentation/assets/images/print_menu.png
Binary file modified documentation/assets/images/qfield-sync_package1.png
Binary file added documentation/assets/images/search-bar.png
Binary file added documentation/assets/images/sensors.webp
Binary file not shown.
Binary file added documentation/assets/images/sensors_menu.png
Binary file modified documentation/assets/images/storage-export-actions.png
Binary file modified documentation/assets/images/storage-import-actions.png
Binary file added documentation/assets/images/storage-qfc1.png
Binary file added documentation/assets/images/storage-qfc2.png
Binary file added documentation/assets/images/storage-qfc3.png
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file removed documentation/assets/projects/simple-bee-farming.zip
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
51 changes: 21 additions & 30 deletions documentation/get-started/concepts.en.md
Original file line number Diff line number Diff line change
@@ -1,46 +1,37 @@
---
title: Concepts
title: Principles
tx_slug: documentation_get-started_concepts
---

# Concepts
# Principles

QField was designed with a few key concepts in mind.
QField is designed with a few key principles in mind.

## Keep it simple

The requirements on the field are not the same as on a desktop. The
screen is smaller, the input devices are different and the tasks are
different.
## Keeping it simple

QField aims to help users to perform the tasks they need to do without
cluttering the user interface. This means, that only tasks which need to
be done on the field are availble from the interface. Everything else is
not.
The requirements in the field are not the same as on a desktop.
Firstly, when using a phone or a tablet, the canvas to work on is much more limited than a computer monitor.
Secondly, devices for data collection as well as the individual tasks that need to be performed are vastly different.

This means that everything like layer styling, form definitions and
other project setup steps should be done on a computer with QGIS
installed first.
QField aims to help users do fieldwork without the nuisance of a cluttered user interface.
In other words, only the relevant parts of a task are accessible on the interface, while less important things remain out of sight.

## Be compatible with QGIS
Before heading out to the field though, preliminary steps such as layer styling, tailored forms, or any other project configurations should first be done on the QGIS desktop version.

QField is based on QGIS. It is not a rebuild of QGIS it really *does*
use QGIS libraries. The rendering engine is exactly the same as in QGIS
for desktop and your project will therefore look exactly the same on
your mobile device as it does on your computer.
## Compatibility with QGIS

If something is already available as a configuration option in a QGIS
project, it should not be re-invented. QField therefore uses the same
edit widgets as QGIS desktop does. If a project is already configured
for the desktop, it should just run on mobile as well.
Since QField relies on existing QGIS Libraries, it is not an extensive rebuild of QGIS.
The rendering engine in QField is the same as the one used in desktop QGIS, ensuring that projects will appear virtually identical in both environments.

Remember, this is just the *concept*. This is what we have in mind when
we develop QField. It does not mean that it is already completely there
yet.
Configurations options prepared in QGIS beforehand don't need to be recreated, which is why QField uses the same edit widgets as QGIS desktop does.
As a result, projects configured on the desktop should work seamlessly on the mobile app.

These principles have so far informed our development and design of QField, and will continue to do so in the future.
Even though QField has been around for some time now, it is still a work in progress.

## Mode based

QField is built around *modes*. Modes are similar to a *map tool* in
QGIS desktop. A mode defines the task which a user is currently doing.
Either a user is *browsing* through the data or she is *digitizing*
something new.
QField is built around different *modes*, similar to the *map tools* in the QGIS desktop version.
The mode defines the nature of the task.
In QField, users are either *browsing* through data or *digitizing* new stuff.
26 changes: 13 additions & 13 deletions documentation/get-started/contribute.en.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,27 +7,27 @@ tx_slug: documentation_get-started_contribute

QField is an open source project. It is free to share, use and modify and it will stay like that. We are very happy if this app helps you in whatever creative way you may use it. If you found it useful, we will be even happier if you could give something back. A couple of things you can do are:

- Rate the app [★★★★★](https://play.google.com/store/apps/details?id=ch.opengis.qfield&hl=en#details-reviews);
- [Tweet about it](https://twitter.com/share?text=Looking%20for%20a%20good%20tool%20for%20field%20work%20in%20GIS?%20Check%20out%20%23QField!);
- [Follow us on twitter](https://twitter.com/QFieldForQGIS);
- Write about your experience ([please let us know!](mailto:[email protected]));
- [Help with the documentation](https://github.com/opengisch/QField-docs#documentation-process);
- [Translate the documentation](https://github.com/opengisch/QField-docs#translation-process) or [the app](https://www.transifex.com/opengisch/qfield-for-qgis/);
- [Sponsor a feature](https://docs.qfield.org/get-started/sponsor/); or
- Rate the app [★★★★★](https://play.google.com/store/apps/details?id=ch.opengis.qfield&hl=en#details-reviews); <!-- markdown-link-check-disable-line -->
- [Tweet about it](https://twitter.com/share?text=Looking%20for%20a%20good%20tool%20for%20field%20work%20in%20GIS?%20Check%20out%20%23QField!); <!-- markdown-link-check-disable-line -->
- [Follow us on twitter](https://twitter.com/QFieldForQGIS); <!-- markdown-link-check-disable-line -->
- Write about your experience ([please let us know!](mailto:[email protected])); <!-- markdown-link-check-disable-line -->
- [Help with the documentation](https://github.com/opengisch/QField-docs#documentation-process); <!-- markdown-link-check-disable-line -->
- [Translate the documentation](https://github.com/opengisch/QField-docs#translation-process) or [the app](https://www.transifex.com/opengisch/qfield-for-qgis/); <!-- markdown-link-check-disable-line -->
- [Sponsor a feature](https://docs.qfield.org/get-started/sponsor/); <!-- markdown-link-check-disable-line --> or
- Just drop by to say thank you or have a beer with us next time you meet OPENGIS.ch at a conference.

# Development

if you want to get involved in QField development, please refer to the following doumentations:
- [QField repository](https://github.com/opengisch/QField/blob/master/doc/dev.md)
- [QFieldCloud repository](https://github.com/opengisch/qfieldcloud)
- [QFieldSync repository](https://github.com/opengisch/QFieldSync)
- [QField repository](https://github.com/opengisch/QField/blob/master/doc/dev.md) <!-- markdown-link-check-disable-line -->
- [QFieldCloud repository](https://github.com/opengisch/qfieldcloud) <!-- markdown-link-check-disable-line -->
- [QFieldSync repository](https://github.com/opengisch/QFieldSync) <!-- markdown-link-check-disable-line -->

# Credits

QField, QFieldCloud and QFieldSync are developped by [OPENGIS.ch](https://www.opengis.ch/). OPENGIS.ch does [consulting](https://www.opengis.ch/training-consulting/),
[development](https://www.opengis.ch/custom-development/), [training](https://www.opengis.ch/qfield-training/) and [support](https://www.opengis.ch/qgis-support/) for open source software including QField and
QField, QFieldCloud and QFieldSync are developped by [OPENGIS.ch](https://www.opengis.ch/) <!-- markdown-link-check-disable-line -->. OPENGIS.ch does [consulting](https://www.opengis.ch/training-consulting/) <!-- markdown-link-check-disable-line -->,
[development](https://www.opengis.ch/custom-development/) <!-- markdown-link-check-disable-line -->, [training](https://www.opengis.ch/qfield-training/) <!-- markdown-link-check-disable-line --> and [support](https://www.opengis.ch/qgis-support/) <!-- markdown-link-check-disable-line --> for open source software including QField and
QGIS.


[![OPENGIS.ch](../assets/images/opengisch_main_transparent.png){width="200px"}](http://www.opengis.ch)
[![OPENGIS.ch](../assets/images/opengisch_main_transparent.png){width="200px"}](http://www.opengis.ch) <!-- markdown-link-check-disable-line -->
2 changes: 1 addition & 1 deletion documentation/get-started/faq.en.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,4 +30,4 @@ tx_slug: documentation_get-started_faq
## I have a question about QField or QFieldCloud. Who can I ask?
We have a [discussion platform](https://github.com/opengisch/QField/discussions) to connect with other members of our community. If you need professional support please [contact us](mailto:[email protected]).

You can find more plans and service related questions in the [QFieldCloud FAQ](https://qfield.cloud/faq/) page.
You can find more plans and service related questions in the [QFieldCloud FAQ](https://qfield.cloud/faq) page.
Loading

0 comments on commit ca21d83

Please sign in to comment.