{"id":21933138,"url":"https://github.com/olekli/mrdocument","last_synced_at":"2026-02-16T22:02:17.850Z","repository":{"id":264318885,"uuid":"891190277","full_name":"olekli/MrDocument","owner":"olekli","description":"Automatic PDF transcription and classification via OpenAI","archived":false,"fork":false,"pushed_at":"2025-02-13T10:45:40.000Z","size":167,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-04T14:52:37.140Z","etag":null,"topics":["automation","chatgpt","classification","document-classification","documents","openai","transcription","workflow"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/olekli.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-11-19T22:17:10.000Z","updated_at":"2025-02-13T10:45:41.000Z","dependencies_parsed_at":"2025-05-31T00:21:24.382Z","dependency_job_id":"3a184aaa-1b73-4780-b5a7-a14a297133cd","html_url":"https://github.com/olekli/MrDocument","commit_stats":null,"previous_names":["olekli/mrdocument"],"tags_count":7,"template":false,"template_full_name":null,"purl":"pkg:github/olekli/MrDocument","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/olekli%2FMrDocument","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/olekli%2FMrDocument/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/olekli%2FMrDocument/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/olekli%2FMrDocument/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/olekli","download_url":"https://codeload.github.com/olekli/MrDocument/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/olekli%2FMrDocument/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278877088,"owners_count":26061380,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-07T02:00:06.786Z","response_time":59,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["automation","chatgpt","classification","document-classification","documents","openai","transcription","workflow"],"created_at":"2024-11-29T00:08:16.022Z","updated_at":"2025-10-09T19:30:42.844Z","avatar_url":"https://github.com/olekli.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# MrDocument\n\n## Synopsis\n\nMrDocument watches a directory on the filesystem.\nWhenever a PDF file appears in this directory,\nit is sent to ChatGPT.\nThere it is transcribed, summarized and categorized by document class and keywords.\nKeywords are added to the PDF's metadata.\nThe PDF file is also renamed according to the schema `{DATE}-{CLASS}-{SOURCE}-{TITLE}`\nwhere date, class, source and title are determined by the AI depending on the document's content.\n\n## Getting Started\n\nWhen you first run MrDocument, it will create a default profile in `{CONFIG}/MrDocument/profile`\nwhere `{CONFIG}` is your user's configuration directory, e.g. `~/.config` or `~/Library/Application Support`.\nMrDocument will probably complain about a missing OpenAI API key at this point.\nStore your API key in `{CONFIG}/MrDocument/openai-api-key`.\n\n## Profiles\n\nThe default profile will point to `{HOME}/MrDocument`.\nInside this directory the subdirs `inbox`, `outbox`, `transit`, `processed` and `error` will be created.\nPlacing a file in the inbox will make MrDocument process it.\nThe file will move through `transit` into `processed` or `error`.\nIf there is no error, the result will be placed in `outbox`.\n\nThe subdirs can be renamed in the profile.\nAdditional profiles can be created too.\nYou can also set custom instructions for a profile, although this is rather rudimentary right now.\n\nPlease note: Creating or writing a file in the profile directory will instantly load or reload it.\nSo take care not to save the profile in an inconsistent state,\nor copy it elsewhere for editing.\n\n## Installation\n\nFor MacOS, there is an installer `mrdocument-install` that will create a background service.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Folekli%2Fmrdocument","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Folekli%2Fmrdocument","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Folekli%2Fmrdocument/lists"}