Skip to content

t00m/MiAZ

Repository files navigation

MiAZ, a Personal Document Organizer

MiAZ big

Features

  • Possibility of using one or more document repositories. One at time. But it can be switched at any time.

  • No database. The directory holding the documents is the database. Properties are extracted from the own filenames. It uses some supporting configurations files to enable a proper identification of those properties (e.g..: FAM means family)

  • Workspace:

    • MiAZ allows to import documents or directories (even in a recursive way)

    • It is fast. The Workspace view can deal with hundred or thousand of files.

    • Filtering and search: The Workspace view have built-in drop-downs to help find documents easily.

    • Support for projects: those documents related between them can be (un)assigned to projects (eg.: all those documents related to the same tax stament). A document can belong to none, one or several projects).

    • Single renaming: a useful feature to rename a single document easily.

  • Plug-in system: in order to avoid large modifications in the code base, MiAZ uses a plug-in system to enable and extend the functionality and the UI.

    • Current 'system' plugins:

      • Mass renaming: when importing several documents, sometimes is useful to assign the same property to all of them (e.g.: same country). This functionality allows MiAZ to do mass renaming for countries, groups, purposes, senders, receivers, etc…​)

      • Export plugins: enable to export document names to CSV, plain text. But it also allows to export document to another directory or even zip them.

Use case

This project is based solely in my own experience and for my own necesities.

It helps to organize the day to day paperwork such as invoices, letters, and any document sent by/to any person (legal entity or natural)

With this in mind, MiAZ uses its own filename convention in order to manage the repository of documents.

File name convention

All documents managed by MiAZ are renamed following this name convention consisting on 7 fields:

{timestamp}-{country}-{group}-{sentby}-{purpose}-{concept}-{sentto}.{extension}

  • Timestamp: with format: %Y%m%d (eg.: 20221119)

  • Country: ISO-3166 Alpha-2 code (eg.: ES)

  • Group: root category to which many documents belong to with a similar purpose. (eg.: HOUSE, EDU, BANKS, WORK, ADM)

  • Purpose: reason (eg.: INFO, REQUEST, INVOICE, STATEMENT, etc…​)

  • SentBy: the (legal or natural) person sending the document

  • Concept: the details (eg.: invoice number, flight number, etc…​)

  • SentTo: the (legal or natural) person receiving the document

  • Each field is separated by a hyphen (-). Only 6 hyphens are allowed. Extra hyphens found in a field are automatically converted to underscores (_)

  • Country code is important in case that the family has ties with others countries apart from the one where they reside)

  • The timestamp format helps to sort documents easily in a file browser

  • SentBy/SentTo fields are stored as a key/value where key is a identifier (eg.: person initials) and value is the full name (eg.: Company or person name)

Screenshots

Manage countries
Mange other properties
Add more info
Single rename
Workspace
Manage repos
Plugins
About

Installation

Currently, it is only possible to install from command line:

/usr/bin/env python3 -m pip install . --user

It should install the following binary: `$HOME/.local/bin/miaz

It has been tested in Ubuntu 22.04.2 LTS and RedHat Fedora 37.

DISCLAIMER

Caution

This software application is currently in development and is not yet ready for production use. The application may contain bugs, errors, or other issues that could cause your computer or device to malfunction or experience other unexpected behaviors. By using this application, you acknowledge and agree that you do so at your own risk, and that the developer and any other parties involved in the development, distribution, or support of this application are not responsible for any damages or losses that may result from its use.

This software application performs typical file operations (such as copy, rename, delete) at Operating System level. Make sure you have a backup of those files.

Please note that this application is based on the GPL v3 license, and is provided free of charge. There is no guarantee of any kind, either express or implied, regarding its functionality, reliability, or suitability for any particular purpose. The developer reserves the right to modify, update, or discontinue this application at any time, and may not provide support or assistance in resolving any issues or problems that arise from its use.

By using this application, you acknowledge and agree to the terms of the GPL v3 license and this disclaimer, and waive any and all claims, actions, or damages that you may have against the developer or any other parties involved in the development, distribution, or support of this application. If you do not agree to these terms, you should not use this application.