{"id":15373022,"url":"https://github.com/vi/ankiimporter","last_synced_at":"2025-02-27T22:30:52.711Z","repository":{"id":137140042,"uuid":"48631743","full_name":"vi/AnkiImporter","owner":"vi","description":"Import cards into AnkiDroid from text files using API","archived":true,"fork":false,"pushed_at":"2025-02-05T21:58:35.000Z","size":108,"stargazers_count":5,"open_issues_count":1,"forks_count":1,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-02-05T22:41:59.356Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Java","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/vi.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}},"created_at":"2015-12-27T03:40:22.000Z","updated_at":"2025-02-05T21:59:43.000Z","dependencies_parsed_at":null,"dependency_job_id":"810202ff-3afe-482e-8045-d0ecc6260ef9","html_url":"https://github.com/vi/AnkiImporter","commit_stats":{"total_commits":27,"total_committers":3,"mean_commits":9.0,"dds":0.5185185185185186,"last_synced_commit":"586a4a5f1005f01d674427aa7b97e435d2e37382"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vi%2FAnkiImporter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vi%2FAnkiImporter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vi%2FAnkiImporter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vi%2FAnkiImporter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vi","download_url":"https://codeload.github.com/vi/AnkiImporter/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241068491,"owners_count":19904045,"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","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":[],"created_at":"2024-10-01T13:54:07.279Z","updated_at":"2025-02-27T22:30:52.697Z","avatar_url":"https://github.com/vi.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Project abandoned\n\nFunction similar to this project is now available in AnkiDroid proper (though you need to create a deck manually).\n\nNote that each import (using this tool) created a separate note type; you can use [this instruction](https://forums.ankiweb.net/t/how-do-i-merge-those-excessive-api-created-note-types-into-one/52210/6) to deduplicate them using database editing.\n\n----\n\n# AnkiImport\n\nPlainText semicolon-separated file -\u003e AnkiDroid importer\n\nBased on [API sample](https://github.com/ankidroid/Anki-Android/wiki/AnkiDroid-API).\n\nLicense is the same as license of the sample linked above.\n\n# Running \n\nThe app still works in Android 12, but is tricky to run properly:\n\n1. You need to create /sdcard/AnkiDroid/TextImport directory manually\n2. You need to know file format and filename-to-deck coding principle\n3. You need to grant filesystem and AnkiDroid access permissions manually (using \"App info\"). The app does not request permissions, just fails to work if they are not granted.\n4. You need to force-restart the app after granting permissions to re-read file list.\n\n# Building\n\nI can build it on Debian using command line similar to this one:\n\n    JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 ANDROID_HOME=/path/to/androidsdk ./gradlew assembleDebug\n\n## TODO/FIXME\n\nMissing features:\n\n* Configurable directory\n* Non-basic note type, configurable field mapping\n* Error handling\n* Proper UI, better help message\n* Upstream AnkiDroid integration\n* Duplicate handling (was removed due to some bug)\n* Storage Access Framework instead of relying on old school permission.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvi%2Fankiimporter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvi%2Fankiimporter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvi%2Fankiimporter/lists"}