Repository files navigation

pre-commit

QField Documentation

This is the documentation for the QField Ecosystem composed by QField, QFieldCloud and QFieldSync. The documentation is deployed here.

This work is licensed under a [Creative Commons Attribution-ShareAlike 4.0 International License][cc-by-sa], feel free to use it accordingly and to contribute back your updates via a pull request.

[cc-by-sa]: http://creativecommons.org/licenses/by-sa/4.0/ [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]

Structure

(Inspired by https://documentation.divio.com/)

The documentation is structured in four separated topics:

  • Get Started
  • How-to guides
  • Technical references
  • Background information

Get Started

Contains lessons that take the reader by the hand through a series of steps to complete a project of some kind. They are what your project needs in order to show a beginner that they can achieve something with it.

They are wholly learning-oriented, and specifically, they are oriented towards learning how rather than learning that.

How-to guides

How-to guides take the reader through the steps required to solve a real-world problem.

They are recipes, directions to achieve a specific end - for example: how to create a web form; how to plot a three-dimensional data-set; how to enable LDAP authentication.

Technical references

Reference guides are technical descriptions of the machinery and how to operate it.

Reference guides have one job only: to describe. They are code-determined, because ultimately that’s what they describe: key classes, functions, APIs, and so they should list things like functions, fields, attributes and methods, and set out how to use them.

Background information

Explanation to clarify and illuminate a particular topic. They broaden the documentation’s coverage of a topic.

Process

The documentation is written in English and managed in this git repository. The latest version of the documentation is automatically built by a Github action and published on the links above.

Translation is done via transifex. The latest translations are pulled and built on a daily basis (using GitHub actions).

Contributing

QField is a community driven open source project. As such we are very happy to get your help and feedback.

Therefore we appreciate if you can help us by

  • Documenting features (in English)
  • Improving the documentation (in English)
  • Translate it to your language

NB: We're using a pre-commit hook to enforce formatting. It will trigger whenever you commit to this repository. Read further to learn how to run your work against it.

Documentation process

Note: You will need a github account for this.

Navigate to https://github.com/opengisch/QField-docs/ and click the Fork link on the top right. You now have your own copy of the documentation on which you can work and cannot do any damage, feel free to experiment. If you want more information about forking you can find it here.

Only English source files are to be edited manually in the repository. Files ending in .en.md are uploaded to Transifex for translation.

It is necessary to create a unique tx_slug in the metadata of the newly created markdown files. E.g:

 ---
title: Advanced Setup
tx_slug: tutorial_advanced_setup_qfc
 ---

The tx_slug identifies the resource on Transifex. It should not be changed in existing files, otherwise unnecessary duplication is created on Transifex.

Testing your changes (on your local machine)

cp .env.example .env
pipenv install -r requirements.txt
pipenv run mkdocs serve

The local doc will be available at http://localhost:8000.

This will build the pages only in English. If you want to see the site in all the translations, in .env file set BUILD_ONLY_LOCALE="" to empty.

Contribute

Before committing, install pre-commit to auto-format your contributions. You can install pre-commit for the current user with

pip install --user pre-commit
pre-commit install

Testing your changes (on your local machine via Docker)

Ensure Docker or Podman is installed and set up as appropriate. If using Podman substitute podman for docker in the following steps.

  1. Clone this repository: git clone https://github.com/opengisch/QField-docs
  2. Create or get a Transifex API token on app.transifex.com, and save it to a local .transifexrc file.
  3. Build the container: docker build . -t qfield-docs --secret id=tx_token,src=.transifexrc
  4. Run it: docker run -it -v ${PWD}/documentation:/opt/app/documentation -p 8000:8000 qfield-docs
  5. Point your browser to the serving endpoint at http://localhost:8000.

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

For inspecting the built documentation before serving you can instead run the container with:

docker run -it -p 8000:8000 --rm localhost/qfield-docs bash
source .venv/bin/activate
mkdocs build

The build output is available at ./site inside of the container.

Contribute changes

Once you have made changes which you would like to contribute back to the main documentation, please make a pull request.

Translation process

Note: You will need to have a Transifex account for this.

Navigate to our Transifex project and click on the language you would like to translate. You will see a link Join Team. Click it and wait for approval (you will receive an email).

Once you receive the email you can head back to the Transifex project page, click on your language again and then will have the possibility to choose a documentation chapter to translate. There is a Translate button after choosing a chapter.

If your language is not yet available, we will happily add it for you. Just open an issue and tell us which language you would like to translate it to.

About

Documentation for the QField ecosystem

Resources

Code of conduct

Security policy

Stars

58 stars

Watchers

14 watching

Forks

Sponsor this project

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Repository files navigation

pre-commit

QField Documentation

This is the documentation for the QField Ecosystem composed by QField, QFieldCloud and QFieldSync. The documentation is deployed here.

This work is licensed under a [Creative Commons Attribution-ShareAlike 4.0 International License][cc-by-sa], feel free to use it accordingly and to contribute back your updates via a pull request.

[cc-by-sa]: http://creativecommons.org/licenses/by-sa/4.0/ [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]

Structure

(Inspired by https://documentation.divio.com/)

The documentation is structured in four separated topics:

  • Get Started
  • How-to guides
  • Technical references
  • Background information

Get Started

Contains lessons that take the reader by the hand through a series of steps to complete a project of some kind. They are what your project needs in order to show a beginner that they can achieve something with it.

They are wholly learning-oriented, and specifically, they are oriented towards learning how rather than learning that.

How-to guides

How-to guides take the reader through the steps required to solve a real-world problem.

They are recipes, directions to achieve a specific end - for example: how to create a web form; how to plot a three-dimensional data-set; how to enable LDAP authentication.

Technical references

Reference guides are technical descriptions of the machinery and how to operate it.

Reference guides have one job only: to describe. They are code-determined, because ultimately that’s what they describe: key classes, functions, APIs, and so they should list things like functions, fields, attributes and methods, and set out how to use them.

Background information

Explanation to clarify and illuminate a particular topic. They broaden the documentation’s coverage of a topic.

Process

The documentation is written in English and managed in this git repository. The latest version of the documentation is automatically built by a Github action and published on the links above.

Translation is done via transifex. The latest translations are pulled and built on a daily basis (using GitHub actions).

Contributing

QField is a community driven open source project. As such we are very happy to get your help and feedback.

Therefore we appreciate if you can help us by

  • Documenting features (in English)
  • Improving the documentation (in English)
  • Translate it to your language

NB: We're using a pre-commit hook to enforce formatting. It will trigger whenever you commit to this repository. Read further to learn how to run your work against it.

Documentation process

Note: You will need a github account for this.

Navigate to https://github.com/opengisch/QField-docs/ and click the Fork link on the top right. You now have your own copy of the documentation on which you can work and cannot do any damage, feel free to experiment. If you want more information about forking you can find it here.

Only English source files are to be edited manually in the repository. Files ending in .en.md are uploaded to Transifex for translation.

It is necessary to create a unique tx_slug in the metadata of the newly created markdown files. E.g:

 ---
title: Advanced Setup
tx_slug: tutorial_advanced_setup_qfc
 ---

The tx_slug identifies the resource on Transifex. It should not be changed in existing files, otherwise unnecessary duplication is created on Transifex.

Testing your changes (on your local machine)

cp .env.example .env
pipenv install -r requirements.txt
pipenv run mkdocs serve

The local doc will be available at http://localhost:8000.

This will build the pages only in English. If you want to see the site in all the translations, in .env file set BUILD_ONLY_LOCALE="" to empty.

Contribute

Before committing, install pre-commit to auto-format your contributions. You can install pre-commit for the current user with

pip install --user pre-commit
pre-commit install

Testing your changes (on your local machine via Docker)

Ensure Docker or Podman is installed and set up as appropriate. If using Podman substitute podman for docker in the following steps.

  1. Clone this repository: git clone https://github.com/opengisch/QField-docs
  2. Create or get a Transifex API token on app.transifex.com, and save it to a local .transifexrc file.
  3. Build the container: docker build . -t qfield-docs --secret id=tx_token,src=.transifexrc
  4. Run it: docker run -it -v ${PWD}/documentation:/opt/app/documentation -p 8000:8000 qfield-docs
  5. Point your browser to the serving endpoint at http://localhost:8000.

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

For inspecting the built documentation before serving you can instead run the container with:

docker run -it -p 8000:8000 --rm localhost/qfield-docs bash
source .venv/bin/activate
mkdocs build

The build output is available at ./site inside of the container.

Contribute changes

Once you have made changes which you would like to contribute back to the main documentation, please make a pull request.

Translation process

Note: You will need to have a Transifex account for this.

Navigate to our Transifex project and click on the language you would like to translate. You will see a link Join Team. Click it and wait for approval (you will receive an email).

Once you receive the email you can head back to the Transifex project page, click on your language again and then will have the possibility to choose a documentation chapter to translate. There is a Translate button after choosing a chapter.

If your language is not yet available, we will happily add it for you. Just open an issue and tell us which language you would like to translate it to.

About

Documentation for the QField ecosystem

Resources

Code of conduct

Security policy

Stars

58 stars

Watchers

14 watching

Forks

Sponsor this project

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

pre-commit

QField Documentation

This is the documentation for the QField Ecosystem composed by QField, QFieldCloud and QFieldSync. The documentation is deployed here.

This work is licensed under a [Creative Commons Attribution-ShareAlike 4.0 International License][cc-by-sa], feel free to use it accordingly and to contribute back your updates via a pull request.

[cc-by-sa]: http://creativecommons.org/licenses/by-sa/4.0/ [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]

Structure

(Inspired by https://documentation.divio.com/)

The documentation is structured in four separated topics:

  • Get Started
  • How-to guides
  • Technical references
  • Background information

Get Started

Contains lessons that take the reader by the hand through a series of steps to complete a project of some kind. They are what your project needs in order to show a beginner that they can achieve something with it.

They are wholly learning-oriented, and specifically, they are oriented towards learning how rather than learning that.

How-to guides

How-to guides take the reader through the steps required to solve a real-world problem.

They are recipes, directions to achieve a specific end - for example: how to create a web form; how to plot a three-dimensional data-set; how to enable LDAP authentication.

Technical references

Reference guides are technical descriptions of the machinery and how to operate it.

Reference guides have one job only: to describe. They are code-determined, because ultimately that’s what they describe: key classes, functions, APIs, and so they should list things like functions, fields, attributes and methods, and set out how to use them.

Background information

Explanation to clarify and illuminate a particular topic. They broaden the documentation’s coverage of a topic.

Process

The documentation is written in English and managed in this git repository. The latest version of the documentation is automatically built by a Github action and published on the links above.

Translation is done via transifex. The latest translations are pulled and built on a daily basis (using GitHub actions).

Contributing

QField is a community driven open source project. As such we are very happy to get your help and feedback.

Therefore we appreciate if you can help us by

  • Documenting features (in English)
  • Improving the documentation (in English)
  • Translate it to your language

NB: We're using a pre-commit hook to enforce formatting. It will trigger whenever you commit to this repository. Read further to learn how to run your work against it.

Documentation process

Note: You will need a github account for this.

Navigate to https://github.com/opengisch/QField-docs/ and click the Fork link on the top right. You now have your own copy of the documentation on which you can work and cannot do any damage, feel free to experiment. If you want more information about forking you can find it here.

Only English source files are to be edited manually in the repository. Files ending in .en.md are uploaded to Transifex for translation.

It is necessary to create a unique tx_slug in the metadata of the newly created markdown files. E.g:

 ---
title: Advanced Setup
tx_slug: tutorial_advanced_setup_qfc
 ---

The tx_slug identifies the resource on Transifex. It should not be changed in existing files, otherwise unnecessary duplication is created on Transifex.

Testing your changes (on your local machine)

cp .env.example .env
pipenv install -r requirements.txt
pipenv run mkdocs serve

The local doc will be available at http://localhost:8000.

This will build the pages only in English. If you want to see the site in all the translations, in .env file set BUILD_ONLY_LOCALE="" to empty.

Contribute

Before committing, install pre-commit to auto-format your contributions. You can install pre-commit for the current user with

pip install --user pre-commit
pre-commit install

Testing your changes (on your local machine via Docker)

Ensure Docker or Podman is installed and set up as appropriate. If using Podman substitute podman for docker in the following steps.

  1. Clone this repository: git clone https://github.com/opengisch/QField-docs
  2. Create or get a Transifex API token on app.transifex.com, and save it to a local .transifexrc file.
  3. Build the container: docker build . -t qfield-docs --secret id=tx_token,src=.transifexrc
  4. Run it: docker run -it -v ${PWD}/documentation:/opt/app/documentation -p 8000:8000 qfield-docs
  5. Point your browser to the serving endpoint at http://localhost:8000.

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

For inspecting the built documentation before serving you can instead run the container with:

docker run -it -p 8000:8000 --rm localhost/qfield-docs bash
source .venv/bin/activate
mkdocs build

The build output is available at ./site inside of the container.

Contribute changes

Once you have made changes which you would like to contribute back to the main documentation, please make a pull request.

Translation process

Note: You will need to have a Transifex account for this.

Navigate to our Transifex project and click on the language you would like to translate. You will see a link Join Team. Click it and wait for approval (you will receive an email).

Once you receive the email you can head back to the Transifex project page, click on your language again and then will have the possibility to choose a documentation chapter to translate. There is a Translate button after choosing a chapter.

If your language is not yet available, we will happily add it for you. Just open an issue and tell us which language you would like to translate it to.

About

Documentation for the QField ecosystem

Resources

Code of conduct

Security policy

Stars

58 stars

Watchers

14 watching

Forks

Sponsor this project

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

pre-commit

QField Documentation

This is the documentation for the QField Ecosystem composed by QField, QFieldCloud and QFieldSync. The documentation is deployed here.

This work is licensed under a [Creative Commons Attribution-ShareAlike 4.0 International License][cc-by-sa], feel free to use it accordingly and to contribute back your updates via a pull request.

[cc-by-sa]: http://creativecommons.org/licenses/by-sa/4.0/ [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]

Structure

(Inspired by https://documentation.divio.com/)

The documentation is structured in four separated topics:

  • Get Started
  • How-to guides
  • Technical references
  • Background information

Get Started

Contains lessons that take the reader by the hand through a series of steps to complete a project of some kind. They are what your project needs in order to show a beginner that they can achieve something with it.

They are wholly learning-oriented, and specifically, they are oriented towards learning how rather than learning that.

How-to guides

How-to guides take the reader through the steps required to solve a real-world problem.

They are recipes, directions to achieve a specific end - for example: how to create a web form; how to plot a three-dimensional data-set; how to enable LDAP authentication.

Technical references

Reference guides are technical descriptions of the machinery and how to operate it.

Reference guides have one job only: to describe. They are code-determined, because ultimately that’s what they describe: key classes, functions, APIs, and so they should list things like functions, fields, attributes and methods, and set out how to use them.

Background information

Explanation to clarify and illuminate a particular topic. They broaden the documentation’s coverage of a topic.

Process

The documentation is written in English and managed in this git repository. The latest version of the documentation is automatically built by a Github action and published on the links above.

Translation is done via transifex. The latest translations are pulled and built on a daily basis (using GitHub actions).

Contributing

QField is a community driven open source project. As such we are very happy to get your help and feedback.

Therefore we appreciate if you can help us by

  • Documenting features (in English)
  • Improving the documentation (in English)
  • Translate it to your language

NB: We're using a pre-commit hook to enforce formatting. It will trigger whenever you commit to this repository. Read further to learn how to run your work against it.

Documentation process

Note: You will need a github account for this.

Navigate to https://github.com/opengisch/QField-docs/ and click the Fork link on the top right. You now have your own copy of the documentation on which you can work and cannot do any damage, feel free to experiment. If you want more information about forking you can find it here.

Only English source files are to be edited manually in the repository. Files ending in .en.md are uploaded to Transifex for translation.

It is necessary to create a unique tx_slug in the metadata of the newly created markdown files. E.g:

 ---
title: Advanced Setup
tx_slug: tutorial_advanced_setup_qfc
 ---

The tx_slug identifies the resource on Transifex. It should not be changed in existing files, otherwise unnecessary duplication is created on Transifex.

Testing your changes (on your local machine)

cp .env.example .env
pipenv install -r requirements.txt
pipenv run mkdocs serve

The local doc will be available at http://localhost:8000.

This will build the pages only in English. If you want to see the site in all the translations, in .env file set BUILD_ONLY_LOCALE="" to empty.

Contribute

Before committing, install pre-commit to auto-format your contributions. You can install pre-commit for the current user with

pip install --user pre-commit
pre-commit install

Testing your changes (on your local machine via Docker)

Ensure Docker or Podman is installed and set up as appropriate. If using Podman substitute podman for docker in the following steps.

  1. Clone this repository: git clone https://github.com/opengisch/QField-docs
  2. Create or get a Transifex API token on app.transifex.com, and save it to a local .transifexrc file.
  3. Build the container: docker build . -t qfield-docs --secret id=tx_token,src=.transifexrc
  4. Run it: docker run -it -v ${PWD}/documentation:/opt/app/documentation -p 8000:8000 qfield-docs
  5. Point your browser to the serving endpoint at http://localhost:8000.

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

For inspecting the built documentation before serving you can instead run the container with:

docker run -it -p 8000:8000 --rm localhost/qfield-docs bash
source .venv/bin/activate
mkdocs build

The build output is available at ./site inside of the container.

Contribute changes

Once you have made changes which you would like to contribute back to the main documentation, please make a pull request.

Translation process

Note: You will need to have a Transifex account for this.

Navigate to our Transifex project and click on the language you would like to translate. You will see a link Join Team. Click it and wait for approval (you will receive an email).

Once you receive the email you can head back to the Transifex project page, click on your language again and then will have the possibility to choose a documentation chapter to translate. There is a Translate button after choosing a chapter.

If your language is not yet available, we will happily add it for you. Just open an issue and tell us which language you would like to translate it to.

About

Documentation for the QField ecosystem

Resources

Code of conduct

Security policy

Stars

58 stars

Watchers

14 watching

Forks

Sponsor this project

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Repository files navigation

pre-commit

QField Documentation

This is the documentation for the QField Ecosystem composed by QField, QFieldCloud and QFieldSync. The documentation is deployed here.

This work is licensed under a [Creative Commons Attribution-ShareAlike 4.0 International License][cc-by-sa], feel free to use it accordingly and to contribute back your updates via a pull request.

[cc-by-sa]: http://creativecommons.org/licenses/by-sa/4.0/ [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]

Structure

(Inspired by https://documentation.divio.com/)

The documentation is structured in four separated topics:

  • Get Started
  • How-to guides
  • Technical references
  • Background information

Get Started

Contains lessons that take the reader by the hand through a series of steps to complete a project of some kind. They are what your project needs in order to show a beginner that they can achieve something with it.

They are wholly learning-oriented, and specifically, they are oriented towards learning how rather than learning that.

How-to guides

How-to guides take the reader through the steps required to solve a real-world problem.

They are recipes, directions to achieve a specific end - for example: how to create a web form; how to plot a three-dimensional data-set; how to enable LDAP authentication.

Technical references

Reference guides are technical descriptions of the machinery and how to operate it.

Reference guides have one job only: to describe. They are code-determined, because ultimately that’s what they describe: key classes, functions, APIs, and so they should list things like functions, fields, attributes and methods, and set out how to use them.

Background information

Explanation to clarify and illuminate a particular topic. They broaden the documentation’s coverage of a topic.

Process

The documentation is written in English and managed in this git repository. The latest version of the documentation is automatically built by a Github action and published on the links above.

Translation is done via transifex. The latest translations are pulled and built on a daily basis (using GitHub actions).

Contributing

QField is a community driven open source project. As such we are very happy to get your help and feedback.

Therefore we appreciate if you can help us by

  • Documenting features (in English)
  • Improving the documentation (in English)
  • Translate it to your language

NB: We're using a pre-commit hook to enforce formatting. It will trigger whenever you commit to this repository. Read further to learn how to run your work against it.

Documentation process

Note: You will need a github account for this.

Navigate to https://github.com/opengisch/QField-docs/ and click the Fork link on the top right. You now have your own copy of the documentation on which you can work and cannot do any damage, feel free to experiment. If you want more information about forking you can find it here.

Only English source files are to be edited manually in the repository. Files ending in .en.md are uploaded to Transifex for translation.

It is necessary to create a unique tx_slug in the metadata of the newly created markdown files. E.g:

 ---
title: Advanced Setup
tx_slug: tutorial_advanced_setup_qfc
 ---

The tx_slug identifies the resource on Transifex. It should not be changed in existing files, otherwise unnecessary duplication is created on Transifex.

Testing your changes (on your local machine)

cp .env.example .env
pipenv install -r requirements.txt
pipenv run mkdocs serve

The local doc will be available at http://localhost:8000.

This will build the pages only in English. If you want to see the site in all the translations, in .env file set BUILD_ONLY_LOCALE="" to empty.

Contribute

Before committing, install pre-commit to auto-format your contributions. You can install pre-commit for the current user with

pip install --user pre-commit
pre-commit install

Testing your changes (on your local machine via Docker)

Ensure Docker or Podman is installed and set up as appropriate. If using Podman substitute podman for docker in the following steps.

  1. Clone this repository: git clone https://github.com/opengisch/QField-docs
  2. Create or get a Transifex API token on app.transifex.com, and save it to a local .transifexrc file.
  3. Build the container: docker build . -t qfield-docs --secret id=tx_token,src=.transifexrc
  4. Run it: docker run -it -v ${PWD}/documentation:/opt/app/documentation -p 8000:8000 qfield-docs
  5. Point your browser to the serving endpoint at http://localhost:8000.

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

For inspecting the built documentation before serving you can instead run the container with:

docker run -it -p 8000:8000 --rm localhost/qfield-docs bash
source .venv/bin/activate
mkdocs build

The build output is available at ./site inside of the container.

Contribute changes

Once you have made changes which you would like to contribute back to the main documentation, please make a pull request.

Translation process

Note: You will need to have a Transifex account for this.

Navigate to our Transifex project and click on the language you would like to translate. You will see a link Join Team. Click it and wait for approval (you will receive an email).

Once you receive the email you can head back to the Transifex project page, click on your language again and then will have the possibility to choose a documentation chapter to translate. There is a Translate button after choosing a chapter.

If your language is not yet available, we will happily add it for you. Just open an issue and tell us which language you would like to translate it to.

About

Documentation for the QField ecosystem

Resources

Code of conduct

Security policy

Stars

58 stars

Watchers

14 watching

Forks

Sponsor this project

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

pre-commit

QField Documentation

This is the documentation for the QField Ecosystem composed by QField, QFieldCloud and QFieldSync. The documentation is deployed here.

This work is licensed under a [Creative Commons Attribution-ShareAlike 4.0 International License][cc-by-sa], feel free to use it accordingly and to contribute back your updates via a pull request.

[cc-by-sa]: http://creativecommons.org/licenses/by-sa/4.0/ [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]

Structure

(Inspired by https://documentation.divio.com/)

The documentation is structured in four separated topics:

  • Get Started
  • How-to guides
  • Technical references
  • Background information

Get Started

Contains lessons that take the reader by the hand through a series of steps to complete a project of some kind. They are what your project needs in order to show a beginner that they can achieve something with it.

They are wholly learning-oriented, and specifically, they are oriented towards learning how rather than learning that.

How-to guides

How-to guides take the reader through the steps required to solve a real-world problem.

They are recipes, directions to achieve a specific end - for example: how to create a web form; how to plot a three-dimensional data-set; how to enable LDAP authentication.

Technical references

Reference guides are technical descriptions of the machinery and how to operate it.

Reference guides have one job only: to describe. They are code-determined, because ultimately that’s what they describe: key classes, functions, APIs, and so they should list things like functions, fields, attributes and methods, and set out how to use them.

Background information

Explanation to clarify and illuminate a particular topic. They broaden the documentation’s coverage of a topic.

Process

The documentation is written in English and managed in this git repository. The latest version of the documentation is automatically built by a Github action and published on the links above.

Translation is done via transifex. The latest translations are pulled and built on a daily basis (using GitHub actions).

Contributing

QField is a community driven open source project. As such we are very happy to get your help and feedback.

Therefore we appreciate if you can help us by

  • Documenting features (in English)
  • Improving the documentation (in English)
  • Translate it to your language

NB: We're using a pre-commit hook to enforce formatting. It will trigger whenever you commit to this repository. Read further to learn how to run your work against it.

Documentation process

Note: You will need a github account for this.

Navigate to https://github.com/opengisch/QField-docs/ and click the Fork link on the top right. You now have your own copy of the documentation on which you can work and cannot do any damage, feel free to experiment. If you want more information about forking you can find it here.

Only English source files are to be edited manually in the repository. Files ending in .en.md are uploaded to Transifex for translation.

It is necessary to create a unique tx_slug in the metadata of the newly created markdown files. E.g:

 ---
title: Advanced Setup
tx_slug: tutorial_advanced_setup_qfc
 ---

The tx_slug identifies the resource on Transifex. It should not be changed in existing files, otherwise unnecessary duplication is created on Transifex.

Testing your changes (on your local machine)

cp .env.example .env
pipenv install -r requirements.txt
pipenv run mkdocs serve

The local doc will be available at http://localhost:8000.

This will build the pages only in English. If you want to see the site in all the translations, in .env file set BUILD_ONLY_LOCALE="" to empty.

Contribute

Before committing, install pre-commit to auto-format your contributions. You can install pre-commit for the current user with

pip install --user pre-commit
pre-commit install

Testing your changes (on your local machine via Docker)

Ensure Docker or Podman is installed and set up as appropriate. If using Podman substitute podman for docker in the following steps.

  1. Clone this repository: git clone https://github.com/opengisch/QField-docs
  2. Create or get a Transifex API token on app.transifex.com, and save it to a local .transifexrc file.
  3. Build the container: docker build . -t qfield-docs --secret id=tx_token,src=.transifexrc
  4. Run it: docker run -it -v ${PWD}/documentation:/opt/app/documentation -p 8000:8000 qfield-docs
  5. Point your browser to the serving endpoint at http://localhost:8000.

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

For inspecting the built documentation before serving you can instead run the container with:

docker run -it -p 8000:8000 --rm localhost/qfield-docs bash
source .venv/bin/activate
mkdocs build

The build output is available at ./site inside of the container.

Contribute changes

Once you have made changes which you would like to contribute back to the main documentation, please make a pull request.

Translation process

Note: You will need to have a Transifex account for this.

Navigate to our Transifex project and click on the language you would like to translate. You will see a link Join Team. Click it and wait for approval (you will receive an email).

Once you receive the email you can head back to the Transifex project page, click on your language again and then will have the possibility to choose a documentation chapter to translate. There is a Translate button after choosing a chapter.

If your language is not yet available, we will happily add it for you. Just open an issue and tell us which language you would like to translate it to.

About

Documentation for the QField ecosystem

Resources

Code of conduct

Security policy

Stars

58 stars

Watchers

14 watching

Forks

Sponsor this project

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

pre-commit

QField Documentation

This is the documentation for the QField Ecosystem composed by QField, QFieldCloud and QFieldSync. The documentation is deployed here.

This work is licensed under a [Creative Commons Attribution-ShareAlike 4.0 International License][cc-by-sa], feel free to use it accordingly and to contribute back your updates via a pull request.

[cc-by-sa]: http://creativecommons.org/licenses/by-sa/4.0/ [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]

Structure

(Inspired by https://documentation.divio.com/)

The documentation is structured in four separated topics:

  • Get Started
  • How-to guides
  • Technical references
  • Background information

Get Started

Contains lessons that take the reader by the hand through a series of steps to complete a project of some kind. They are what your project needs in order to show a beginner that they can achieve something with it.

They are wholly learning-oriented, and specifically, they are oriented towards learning how rather than learning that.

How-to guides

How-to guides take the reader through the steps required to solve a real-world problem.

They are recipes, directions to achieve a specific end - for example: how to create a web form; how to plot a three-dimensional data-set; how to enable LDAP authentication.

Technical references

Reference guides are technical descriptions of the machinery and how to operate it.

Reference guides have one job only: to describe. They are code-determined, because ultimately that’s what they describe: key classes, functions, APIs, and so they should list things like functions, fields, attributes and methods, and set out how to use them.

Background information

Explanation to clarify and illuminate a particular topic. They broaden the documentation’s coverage of a topic.

Process

The documentation is written in English and managed in this git repository. The latest version of the documentation is automatically built by a Github action and published on the links above.

Translation is done via transifex. The latest translations are pulled and built on a daily basis (using GitHub actions).

Contributing

QField is a community driven open source project. As such we are very happy to get your help and feedback.

Therefore we appreciate if you can help us by

  • Documenting features (in English)
  • Improving the documentation (in English)
  • Translate it to your language

NB: We're using a pre-commit hook to enforce formatting. It will trigger whenever you commit to this repository. Read further to learn how to run your work against it.

Documentation process

Note: You will need a github account for this.

Navigate to https://github.com/opengisch/QField-docs/ and click the Fork link on the top right. You now have your own copy of the documentation on which you can work and cannot do any damage, feel free to experiment. If you want more information about forking you can find it here.

Only English source files are to be edited manually in the repository. Files ending in .en.md are uploaded to Transifex for translation.

It is necessary to create a unique tx_slug in the metadata of the newly created markdown files. E.g:

 ---
title: Advanced Setup
tx_slug: tutorial_advanced_setup_qfc
 ---

The tx_slug identifies the resource on Transifex. It should not be changed in existing files, otherwise unnecessary duplication is created on Transifex.

Testing your changes (on your local machine)

cp .env.example .env
pipenv install -r requirements.txt
pipenv run mkdocs serve

The local doc will be available at http://localhost:8000.

This will build the pages only in English. If you want to see the site in all the translations, in .env file set BUILD_ONLY_LOCALE="" to empty.

Contribute

Before committing, install pre-commit to auto-format your contributions. You can install pre-commit for the current user with

pip install --user pre-commit
pre-commit install

Testing your changes (on your local machine via Docker)

Ensure Docker or Podman is installed and set up as appropriate. If using Podman substitute podman for docker in the following steps.

  1. Clone this repository: git clone https://github.com/opengisch/QField-docs
  2. Create or get a Transifex API token on app.transifex.com, and save it to a local .transifexrc file.
  3. Build the container: docker build . -t qfield-docs --secret id=tx_token,src=.transifexrc
  4. Run it: docker run -it -v ${PWD}/documentation:/opt/app/documentation -p 8000:8000 qfield-docs
  5. Point your browser to the serving endpoint at http://localhost:8000.

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

For inspecting the built documentation before serving you can instead run the container with:

docker run -it -p 8000:8000 --rm localhost/qfield-docs bash
source .venv/bin/activate
mkdocs build

The build output is available at ./site inside of the container.

Contribute changes

Once you have made changes which you would like to contribute back to the main documentation, please make a pull request.

Translation process

Note: You will need to have a Transifex account for this.

Navigate to our Transifex project and click on the language you would like to translate. You will see a link Join Team. Click it and wait for approval (you will receive an email).

Once you receive the email you can head back to the Transifex project page, click on your language again and then will have the possibility to choose a documentation chapter to translate. There is a Translate button after choosing a chapter.

If your language is not yet available, we will happily add it for you. Just open an issue and tell us which language you would like to translate it to.

About

Documentation for the QField ecosystem

Resources

Code of conduct

Security policy

Stars

58 stars

Watchers

14 watching

Forks

Sponsor this project

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Repository files navigation

pre-commit

QField Documentation

This is the documentation for the QField Ecosystem composed by QField, QFieldCloud and QFieldSync. The documentation is deployed here.

This work is licensed under a [Creative Commons Attribution-ShareAlike 4.0 International License][cc-by-sa], feel free to use it accordingly and to contribute back your updates via a pull request.

[cc-by-sa]: http://creativecommons.org/licenses/by-sa/4.0/ [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]

Structure

(Inspired by https://documentation.divio.com/)

The documentation is structured in four separated topics:

  • Get Started
  • How-to guides
  • Technical references
  • Background information

Get Started

Contains lessons that take the reader by the hand through a series of steps to complete a project of some kind. They are what your project needs in order to show a beginner that they can achieve something with it.

They are wholly learning-oriented, and specifically, they are oriented towards learning how rather than learning that.

How-to guides

How-to guides take the reader through the steps required to solve a real-world problem.

They are recipes, directions to achieve a specific end - for example: how to create a web form; how to plot a three-dimensional data-set; how to enable LDAP authentication.

Technical references

Reference guides are technical descriptions of the machinery and how to operate it.

Reference guides have one job only: to describe. They are code-determined, because ultimately that’s what they describe: key classes, functions, APIs, and so they should list things like functions, fields, attributes and methods, and set out how to use them.

Background information

Explanation to clarify and illuminate a particular topic. They broaden the documentation’s coverage of a topic.

Process

The documentation is written in English and managed in this git repository. The latest version of the documentation is automatically built by a Github action and published on the links above.

Translation is done via transifex. The latest translations are pulled and built on a daily basis (using GitHub actions).

Contributing

QField is a community driven open source project. As such we are very happy to get your help and feedback.

Therefore we appreciate if you can help us by

  • Documenting features (in English)
  • Improving the documentation (in English)
  • Translate it to your language

NB: We're using a pre-commit hook to enforce formatting. It will trigger whenever you commit to this repository. Read further to learn how to run your work against it.

Documentation process

Note: You will need a github account for this.

Navigate to https://github.com/opengisch/QField-docs/ and click the Fork link on the top right. You now have your own copy of the documentation on which you can work and cannot do any damage, feel free to experiment. If you want more information about forking you can find it here.

Only English source files are to be edited manually in the repository. Files ending in .en.md are uploaded to Transifex for translation.

It is necessary to create a unique tx_slug in the metadata of the newly created markdown files. E.g:

 ---
title: Advanced Setup
tx_slug: tutorial_advanced_setup_qfc
 ---

The tx_slug identifies the resource on Transifex. It should not be changed in existing files, otherwise unnecessary duplication is created on Transifex.

Testing your changes (on your local machine)

cp .env.example .env
pipenv install -r requirements.txt
pipenv run mkdocs serve

The local doc will be available at http://localhost:8000.

This will build the pages only in English. If you want to see the site in all the translations, in .env file set BUILD_ONLY_LOCALE="" to empty.

Contribute

Before committing, install pre-commit to auto-format your contributions. You can install pre-commit for the current user with

pip install --user pre-commit
pre-commit install

Testing your changes (on your local machine via Docker)

Ensure Docker or Podman is installed and set up as appropriate. If using Podman substitute podman for docker in the following steps.

  1. Clone this repository: git clone https://github.com/opengisch/QField-docs
  2. Create or get a Transifex API token on app.transifex.com, and save it to a local .transifexrc file.
  3. Build the container: docker build . -t qfield-docs --secret id=tx_token,src=.transifexrc
  4. Run it: docker run -it -v ${PWD}/documentation:/opt/app/documentation -p 8000:8000 qfield-docs
  5. Point your browser to the serving endpoint at http://localhost:8000.

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

For inspecting the built documentation before serving you can instead run the container with:

docker run -it -p 8000:8000 --rm localhost/qfield-docs bash
source .venv/bin/activate
mkdocs build

The build output is available at ./site inside of the container.

Contribute changes

Once you have made changes which you would like to contribute back to the main documentation, please make a pull request.

Translation process

Note: You will need to have a Transifex account for this.

Navigate to our Transifex project and click on the language you would like to translate. You will see a link Join Team. Click it and wait for approval (you will receive an email).

Once you receive the email you can head back to the Transifex project page, click on your language again and then will have the possibility to choose a documentation chapter to translate. There is a Translate button after choosing a chapter.

If your language is not yet available, we will happily add it for you. Just open an issue and tell us which language you would like to translate it to.

About

Documentation for the QField ecosystem

Resources

Code of conduct

Security policy

Stars

58 stars

Watchers

14 watching

Forks

Sponsor this project

Used by

Contributors

Languages