2025-01-30 08:13:40 +00:00
|
|
|
# Filemure
|
|
|
|
|
|
|
|
Filemure is a simple document management application.
|
|
|
|
|
|
|
|
It supports:
|
2025-02-02 11:30:04 +00:00
|
|
|
|
2025-01-30 08:13:40 +00:00
|
|
|
* uploading of files
|
|
|
|
* tagging
|
|
|
|
* search
|
|
|
|
* download / export
|
|
|
|
|
2025-02-02 11:30:04 +00:00
|
|
|
## TODO
|
|
|
|
|
|
|
|
* create document from files in limbo
|
|
|
|
* display documents list
|
|
|
|
* display document details
|
|
|
|
* display files
|
|
|
|
* in limbo
|
|
|
|
* in document
|
|
|
|
* add files to documents
|
|
|
|
* edit document data
|
|
|
|
* parse document contents (for pdf, txt, ...)
|
|
|
|
* guess target date from filenames
|
2025-02-02 16:17:52 +00:00
|
|
|
* move documents to trash
|
|
|
|
* delete documents + files
|
|
|
|
* delete files in limbo
|
2025-02-02 11:30:04 +00:00
|
|
|
|
2025-01-30 08:13:40 +00:00
|
|
|
## Build
|
2025-01-29 18:01:36 +00:00
|
|
|
|
|
|
|
This project uses [Gradle](https://gradle.org/).
|
|
|
|
To build and run the application, use the *Gradle* tool window by clicking the Gradle icon in the right-hand toolbar,
|
|
|
|
or run it directly from the terminal:
|
|
|
|
|
|
|
|
* Run `./gradlew run` to build and run the application.
|
|
|
|
* Run `./gradlew build` to only build the application.
|
|
|
|
* Run `./gradlew check` to run all checks, including tests.
|
|
|
|
* Run `./gradlew clean` to clean all build outputs.
|
|
|
|
|
|
|
|
Note the usage of the Gradle Wrapper (`./gradlew`).
|
|
|
|
This is the suggested way to use Gradle in production projects.
|
|
|
|
|
|
|
|
[Learn more about the Gradle Wrapper](https://docs.gradle.org/current/userguide/gradle_wrapper.html).
|
|
|
|
|
|
|
|
[Learn more about Gradle tasks](https://docs.gradle.org/current/userguide/command_line_interface.html#common_tasks).
|
|
|
|
|
|
|
|
This project follows the suggested multi-module setup and consists of the `app` and `utils` subprojects.
|
|
|
|
The shared build logic was extracted to a convention plugin located in `buildSrc`.
|
|
|
|
|
|
|
|
This project uses a version catalog (see `gradle/libs.versions.toml`) to declare and version dependencies
|
|
|
|
and both a build cache and a configuration cache (see `gradle.properties`).
|