mirror of
				https://github.com/paperless-ngx/paperless-ngx.git
				synced 2025-10-30 03:56:23 -05:00 
			
		
		
		
	Updates documentation formatting, grammar, links
Correct indentation of lists, code blocks Update faq.md Update CONTRIBUTING.md Update development.md Update advanced_usage.md Update administration.md Update configuration.md Update configuration.md Update advanced_usage.md Update faq.md
This commit is contained in:
		| @@ -45,7 +45,7 @@ Examples of `non-trivial` PRs might include: | |||||||
|  |  | ||||||
| - Additional features | - Additional features | ||||||
| - Large changes to many distinct files | - Large changes to many distinct files | ||||||
| - Breaking or depreciation of existing features | - Breaking or deprecation of existing features | ||||||
|  |  | ||||||
| Our community review process for `non-trivial` PRs is the following: | Our community review process for `non-trivial` PRs is the following: | ||||||
|  |  | ||||||
|   | |||||||
| @@ -68,23 +68,23 @@ $ docker-compose down | |||||||
|  |  | ||||||
| After that, [make a backup](#backup). | After that, [make a backup](#backup). | ||||||
|  |  | ||||||
| 1. If you pull the image from the docker hub, all you need to do is: | 1.  If you pull the image from the docker hub, all you need to do is: | ||||||
|  |  | ||||||
|    ```shell-session |     ```shell-session | ||||||
|    $ docker-compose pull |     $ docker-compose pull | ||||||
|    $ docker-compose up |     $ docker-compose up | ||||||
|    ``` |     ``` | ||||||
|  |  | ||||||
|    The docker-compose files refer to the `latest` version, which is |     The docker-compose files refer to the `latest` version, which is | ||||||
|    always the latest stable release. |     always the latest stable release. | ||||||
|  |  | ||||||
| 2. If you built the image yourself, do the following: | 1.  If you built the image yourself, do the following: | ||||||
|  |  | ||||||
|    ```shell-session |     ```shell-session | ||||||
|    $ git pull |     $ git pull | ||||||
|    $ docker-compose build |     $ docker-compose build | ||||||
|    $ docker-compose up |     $ docker-compose up | ||||||
|    ``` |     ``` | ||||||
|  |  | ||||||
| Running `docker-compose up` will also apply any new database migrations. | Running `docker-compose up` will also apply any new database migrations. | ||||||
| If you see everything working, press CTRL+C once to gracefully stop | If you see everything working, press CTRL+C once to gracefully stop | ||||||
| @@ -470,7 +470,7 @@ The issues detected by the sanity checker are as follows: | |||||||
| - Inaccessible thumbnails due to improper permissions. | - Inaccessible thumbnails due to improper permissions. | ||||||
| - Documents without any content (warning). | - Documents without any content (warning). | ||||||
| - Orphaned files in the media directory (warning). These are files | - Orphaned files in the media directory (warning). These are files | ||||||
|   that are not referenced by any document im paperless. |   that are not referenced by any document in paperless. | ||||||
|  |  | ||||||
| ``` | ``` | ||||||
| document_sanity_checker | document_sanity_checker | ||||||
|   | |||||||
| @@ -1,6 +1,6 @@ | |||||||
| # Advanced Topics | # Advanced Topics | ||||||
|  |  | ||||||
| Paperless offers a couple features that automate certain tasks and make | Paperless offers a couple of features that automate certain tasks and make | ||||||
| your life easier. | your life easier. | ||||||
|  |  | ||||||
| ## Matching tags, correspondents, document types, and storage paths {#matching} | ## Matching tags, correspondents, document types, and storage paths {#matching} | ||||||
| @@ -35,9 +35,9 @@ The following algorithms are available: | |||||||
|   (i.e. preserve ordering) in the PDF. |   (i.e. preserve ordering) in the PDF. | ||||||
| - **Regular expression:** Parses the match as a regular expression and | - **Regular expression:** Parses the match as a regular expression and | ||||||
|   tries to find a match within the document. |   tries to find a match within the document. | ||||||
| - **Fuzzy match:** I don't know. Look at the source. | - **Fuzzy match:** I don't know. Look at [the source](https://github.com/paperless-ngx/paperless-ngx/blob/main/src/documents/matching.py). | ||||||
| - **Auto:** Tries to automatically match new documents. This does not | - **Auto:** Tries to automatically match new documents. This does not | ||||||
|   require you to set a match. See the notes below. |   require you to set a match. See the [notes below](#automatic-matching). | ||||||
|  |  | ||||||
| When using the _any_ or _all_ matching algorithms, you can search for | When using the _any_ or _all_ matching algorithms, you can search for | ||||||
| terms that consist of multiple words by enclosing them in double quotes. | terms that consist of multiple words by enclosing them in double quotes. | ||||||
| @@ -92,7 +92,7 @@ when using this feature: | |||||||
|   decide when not to assign a certain tag, correspondent, document |   decide when not to assign a certain tag, correspondent, document | ||||||
|   type, or storage path. This will usually be the case as you start |   type, or storage path. This will usually be the case as you start | ||||||
|   filling up paperless with documents. Example: If all your documents |   filling up paperless with documents. Example: If all your documents | ||||||
|   are either from "Webshop" and "Bank", paperless will assign one |   are either from "Webshop" or "Bank", paperless will assign one | ||||||
|   of these correspondents to ANY new document, if both are set to |   of these correspondents to ANY new document, if both are set to | ||||||
|   automatic matching. |   automatic matching. | ||||||
|  |  | ||||||
| @@ -101,7 +101,7 @@ when using this feature: | |||||||
| Sometimes you may want to do something arbitrary whenever a document is | Sometimes you may want to do something arbitrary whenever a document is | ||||||
| consumed. Rather than try to predict what you may want to do, Paperless | consumed. Rather than try to predict what you may want to do, Paperless | ||||||
| lets you execute scripts of your own choosing just before or after a | lets you execute scripts of your own choosing just before or after a | ||||||
| document is consumed using a couple simple hooks. | document is consumed using a couple of simple hooks. | ||||||
|  |  | ||||||
| Just write a script, put it somewhere that Paperless can read & execute, | Just write a script, put it somewhere that Paperless can read & execute, | ||||||
| and then put the path to that script in `paperless.conf` or | and then put the path to that script in `paperless.conf` or | ||||||
| @@ -197,7 +197,7 @@ The script can be in any language, A simple shell script example: | |||||||
| !!! warning | !!! warning | ||||||
|  |  | ||||||
|     The post consumption script should not modify the document files |     The post consumption script should not modify the document files | ||||||
|     directly |     directly. | ||||||
|  |  | ||||||
| The script's stdout and stderr will be logged line by line to the | The script's stdout and stderr will be logged line by line to the | ||||||
| webserver log, along with the exit code of the script. | webserver log, along with the exit code of the script. | ||||||
|   | |||||||
| @@ -524,7 +524,7 @@ parsing documents. | |||||||
|  |  | ||||||
| `PAPERLESS_OCR_MODE=<mode>` | `PAPERLESS_OCR_MODE=<mode>` | ||||||
|  |  | ||||||
| : Tell paperless when and how to perform ocr on your documents. Four | : Tell paperless when and how to perform ocr on your documents. Three | ||||||
| modes are available: | modes are available: | ||||||
|  |  | ||||||
|     -   `skip`: Paperless skips all pages and will perform ocr only on |     -   `skip`: Paperless skips all pages and will perform ocr only on | ||||||
| @@ -1123,7 +1123,7 @@ find on your system when it starts up. Unless you've done something | |||||||
| creative with their installation, you probably won't need to edit any | creative with their installation, you probably won't need to edit any | ||||||
| of these. However, if you've installed these programs somewhere where | of these. However, if you've installed these programs somewhere where | ||||||
| simply typing the name of the program doesn't automatically execute it | simply typing the name of the program doesn't automatically execute it | ||||||
| (ie. the program isn't in your \$PATH), then you'll need to specify | (ie. the program isn't in your $PATH), then you'll need to specify | ||||||
| the literal path for that program. | the literal path for that program. | ||||||
|  |  | ||||||
| `PAPERLESS_CONVERT_BINARY=<path>` | `PAPERLESS_CONVERT_BINARY=<path>` | ||||||
| @@ -1207,7 +1207,7 @@ actual group ID on the host system, which you can get by executing | |||||||
| with English, German, Italian, Spanish and French. If your language | with English, German, Italian, Spanish and French. If your language | ||||||
| is not in this list, install additional languages with this | is not in this list, install additional languages with this | ||||||
| configuration option. You will need to [find the right LangCodes](https://tesseract-ocr.github.io/tessdoc/Data-Files-in-different-versions.html) | configuration option. You will need to [find the right LangCodes](https://tesseract-ocr.github.io/tessdoc/Data-Files-in-different-versions.html) | ||||||
| but note that (tesseract-ocr-\* package names)[https://packages.debian.org/bullseye/graphics/] | but note that [tesseract-ocr-\* package names](https://packages.debian.org/bullseye/graphics/) | ||||||
| do not always correspond with the language codes e.g. "chi_tra" should be | do not always correspond with the language codes e.g. "chi_tra" should be | ||||||
| specified as "chi-tra". | specified as "chi-tra". | ||||||
|  |  | ||||||
|   | |||||||
| @@ -58,7 +58,7 @@ first-time setup. | |||||||
|  |  | ||||||
| !!! note | !!! note | ||||||
|  |  | ||||||
|     Every command is executed directly from the root folder of the project unless specified otherwise. |       Every command is executed directly from the root folder of the project unless specified otherwise. | ||||||
|  |  | ||||||
| 1.  Install prerequisites + pipenv as mentioned in | 1.  Install prerequisites + pipenv as mentioned in | ||||||
|     [Bare metal route](/setup#bare_metal). |     [Bare metal route](/setup#bare_metal). | ||||||
| @@ -177,68 +177,69 @@ The front end is built using AngularJS. In order to get started, you need Node.j | |||||||
|  |  | ||||||
|     The following commands are all performed in the `src-ui`-directory. You will need a running back end (including an active session) to connect to the back end API. To spin it up refer to the commands under the section [above](#back-end-development). |     The following commands are all performed in the `src-ui`-directory. You will need a running back end (including an active session) to connect to the back end API. To spin it up refer to the commands under the section [above](#back-end-development). | ||||||
|  |  | ||||||
| 1. Install the Angular CLI. You might need sudo privileges | 1.  Install the Angular CLI. You might need sudo privileges to perform this command: | ||||||
|    to perform this command: |  | ||||||
|  |  | ||||||
|    ```bash |     ```bash | ||||||
|    $ npm install -g @angular/cli |     $ npm install -g @angular/cli | ||||||
|    ``` |     ``` | ||||||
|  |  | ||||||
| 2. Make sure that it's on your path. | 2.  Make sure that it's on your path. | ||||||
|  |  | ||||||
| 3. Install all necessary modules: | 3.  Install all necessary modules: | ||||||
|  |  | ||||||
|    ```bash |     ```bash | ||||||
|    $ npm install |     $ npm install | ||||||
|    ``` |     ``` | ||||||
|  |  | ||||||
| 4. You can launch a development server by running: | 4.  You can launch a development server by running: | ||||||
|  |  | ||||||
|    ```bash |     ```bash | ||||||
|    $ ng serve |     $ ng serve | ||||||
|    ``` |     ``` | ||||||
|  |  | ||||||
|    This will automatically update whenever you save. However, in-place |     This will automatically update whenever you save. However, in-place | ||||||
|    compilation might fail on syntax errors, in which case you need to |     compilation might fail on syntax errors, in which case you need to | ||||||
|    restart it. |     restart it. | ||||||
|  |  | ||||||
|    By default, the development server is available on `http://localhost:4200/` and is configured to access the API at |     By default, the development server is available on `http://localhost:4200/` and is configured to access the API at | ||||||
|    `http://localhost:8000/api/`, which is the default of the backend. If you enabled `DEBUG` on the back end, several security overrides for allowed hosts, CORS and X-Frame-Options are in place so that the front end behaves exactly as in production. |     `http://localhost:8000/api/`, which is the default of the backend. If you enabled `DEBUG` on the back end, several security overrides for allowed hosts, CORS and X-Frame-Options are in place so that the front end behaves exactly as in production. | ||||||
|  |  | ||||||
| ### Testing and code style | ### Testing and code style | ||||||
|  |  | ||||||
| - The front end code (.ts, .html, .scss) use `prettier` for code | The front end code (.ts, .html, .scss) use `prettier` for code | ||||||
|   formatting via the Git `pre-commit` hooks which run automatically on | formatting via the Git `pre-commit` hooks which run automatically on | ||||||
|   commit. See [above](#code-formatting-with-pre-commit-hooks) for installation instructions. You can also run this via the CLI with a | commit. See [above](#code-formatting-with-pre-commit-hooks) for installation instructions. You can also run this via the CLI with a | ||||||
|   command such as | command such as | ||||||
|  |  | ||||||
|   ```bash | ```bash | ||||||
|   $ git ls-files -- '*.ts' | xargs pre-commit run prettier --files | $ git ls-files -- '*.ts' | xargs pre-commit run prettier --files | ||||||
|   ``` | ``` | ||||||
|  |  | ||||||
| - Front end testing uses Jest and Playwright. Unit tests and e2e tests, | Front end testing uses Jest and Playwright. Unit tests and e2e tests, | ||||||
|   respectively, can be run non-interactively with: | respectively, can be run non-interactively with: | ||||||
|  |  | ||||||
|   ```bash | ```bash | ||||||
|   $ ng test | $ ng test | ||||||
|   $ npx playwright test | $ npx playwright test | ||||||
|   ``` | ``` | ||||||
|  |  | ||||||
|   - Playwright also includes a UI which can be run with: | Playwright also includes a UI which can be run with: | ||||||
|  |  | ||||||
|     ```bash | ```bash | ||||||
|     $ npx playwright test --ui | $ npx playwright test --ui | ||||||
|     ``` | ``` | ||||||
|  |  | ||||||
| - In order to build the front end and serve it as part of Django, execute: | ### Building the frontend | ||||||
|  |  | ||||||
|   ```bash | In order to build the front end and serve it as part of Django, execute: | ||||||
|   $ ng build --configuration production |  | ||||||
|   ``` |  | ||||||
|  |  | ||||||
|   This will build the front end and put it in a location from which the | ```bash | ||||||
|   Django server will serve it as static content. This way, you can verify | $ ng build --configuration production | ||||||
|   that authentication is working. | ``` | ||||||
|  |  | ||||||
|  | This will build the front end and put it in a location from which the | ||||||
|  | Django server will serve it as static content. This way, you can verify | ||||||
|  | that authentication is working. | ||||||
|  |  | ||||||
| ## Localization | ## Localization | ||||||
|  |  | ||||||
|   | |||||||
							
								
								
									
										13
									
								
								docs/faq.md
									
									
									
									
									
								
							
							
						
						
									
										13
									
								
								docs/faq.md
									
									
									
									
									
								
							| @@ -3,10 +3,11 @@ | |||||||
| ## _What's the general plan for Paperless-ngx?_ | ## _What's the general plan for Paperless-ngx?_ | ||||||
|  |  | ||||||
| **A:** While Paperless-ngx is already considered largely | **A:** While Paperless-ngx is already considered largely | ||||||
| "feature-complete" it is a community-driven project and development | "feature-complete", it is a community-driven project and development | ||||||
| will be guided in this way. New features can be submitted via GitHub | will be guided in this way. New features can be submitted via | ||||||
| discussions and "up-voted" by the community but this is not a | [GitHub discussions](https://github.com/paperless-ngx/paperless-ngx/discussions) | ||||||
| guarantee the feature will be implemented. This project will always be | and "up-voted" by the community, but this is not a | ||||||
|  | guarantee that the feature will be implemented. This project will always be | ||||||
| open to collaboration in the form of PRs, ideas etc. | open to collaboration in the form of PRs, ideas etc. | ||||||
|  |  | ||||||
| ## _I'm using docker. Where are my documents?_ | ## _I'm using docker. Where are my documents?_ | ||||||
| @@ -58,7 +59,7 @@ elsewhere. Here are a couple notes about that. | |||||||
|   WebP images are processed with OCR and converted into PDF documents. |   WebP images are processed with OCR and converted into PDF documents. | ||||||
| - Plain text documents are supported as well and are added verbatim to | - Plain text documents are supported as well and are added verbatim to | ||||||
|   paperless. |   paperless. | ||||||
| - With the optional Tika integration enabled (see [Tika configuration](/configuration#tika), | - With the optional Tika integration enabled (see [Tika configuration](https://docs.paperless-ngx.com/configuration#tika)), | ||||||
|   Paperless also supports various Office documents (.docx, .doc, odt, |   Paperless also supports various Office documents (.docx, .doc, odt, | ||||||
|   .ppt, .pptx, .odp, .xls, .xlsx, .ods). |   .ppt, .pptx, .odp, .xls, .xlsx, .ods). | ||||||
|  |  | ||||||
| @@ -82,7 +83,7 @@ has to do much less work to serve the data. | |||||||
| ## _How do I install paperless-ngx on Raspberry Pi?_ | ## _How do I install paperless-ngx on Raspberry Pi?_ | ||||||
|  |  | ||||||
| **A:** Docker images are available for armv7 and arm64 hardware, so just | **A:** Docker images are available for armv7 and arm64 hardware, so just | ||||||
| follow the docker-compose instructions. Apart from more required disk | follow the [docker-compose instructions](https://docs.paperless-ngx.com/setup/#installation). Apart from more required disk | ||||||
| space compared to a bare metal installation, docker comes with close to | space compared to a bare metal installation, docker comes with close to | ||||||
| zero overhead, even on Raspberry Pi. | zero overhead, even on Raspberry Pi. | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 mechanarchy
					mechanarchy