{ "info": { "author": "Aristotelis P. (Glutanimate)", "author_email": "", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: GNU Affero General Public License v3", "Operating System :: MacOS", "Operating System :: POSIX", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Software Development :: Build Tools" ], "description": "## Anki Add-on Builder\n\n\n\n\n\n\n\nAn opinionated build tool for Anki add-ons. Used in most of my major Anki projects.\n\n- [Disclaimer](#disclaimer)\n- [Installation](#installation)\n- [Usage](#usage)\n- [Specifications](#specifications)\n- [License and Credits](#license-and-credits)\n\n### Disclaimer\n\n#### Project State\n\nThis is still very much a work-in-progress. Neither the API, nor the implementation are set in stone. At this point the project's main purpose lies in replacing the variety of different build scripts I am employing across all of my add-ons, making the build chain more standardized and maintainable.\n\n#### Platform Support\n\n`aab` has only been tested on Linux so far, but it might also work on other POSIX-compliant environments like macOS.\n\n### Installation\n\n#### Requirements\n\n`aab` needs to be run in an Anki development environment to work correctly. Please refer to [Anki's documentation](https://github.com/dae/anki/blob/master/README.development) for information on how to set this up.\n\n#### Installing the latest release\n\n pip install aab\n\n#### Installing from the master branch\n\n pip install --upgrade git+https://github.com/glutanimate/anki-addon-builder.git\n\n### Usage\n\nYou can get an overview of all supported actions by accessing the built-in help:\n\n```\n$ aab -h\nusage: aab [-h] [-v] [-s] {build,ui,clean} ...\n\npositional arguments:\n {build,ui,clean}\n build Build and package add-on for distribution\n ui Compile add-on user interface files\n clean Clean leftover build files\n\noptional arguments:\n -h, --help show this help message and exit\n -v, --verbose Enable verbose output\n```\n\nEach subcommand also comes with its own help screen, e.g.:\n\n```\n$ aab build -h\nusage: aab build [-h] [-t {anki21,anki20,all}] [-d {local,ankiweb,all}]\n [version]\n\npositional arguments:\n version Version to build as a git reference (e.g. 'v1.2.0' or\n 'd338f6405'). Special keywords: 'current' \u2013 latest\n commit, 'release' \u2013 latest tag. Leave empty to build\n latest tag.\n\noptional arguments:\n -h, --help show this help message and exit\n -t {anki21,anki20,all}, --target {anki21,anki20,all}\n Anki version to build for\n -d {local,ankiweb,all}, --dist {local,ankiweb,all}\n Distribution channel to build for\n```\n\n#### Examples\n\n_Build latest tagged add-on release_\n\n```\naab build -d local -t anki21 release\n```\n\nor simply\n\n```\naab build\n```\n\n_Compile Qt UI forms and resources for Anki 2.1_\n\n```bash\naab ui -t anki21\n```\n\n### Specifications\n\n#### Project Structure\n\nIn order for `aab` to work correctly, your project should generally follow the directory structure below:\n\n```\nproject root\n\u251c\u2500\u2500 src [required] (contains add-on package and Anki 2.0 entry-point)\n\u2502 \u251c\u2500\u2500 {module_name} [required] (add-on package)\n| \u2514\u2500\u2500 {display_name}.py [optional] (Anki 2.0 entry-point)\n\u2514\u2500\u2500 addon.json [required] (contains add-on meta information read by aab)\n```\n\nFor a more detailed look at the entire directory tree please feel free to take a look at some of the [add-ons I've published recently](https://github.com/topics/anki-addon?o=desc&q=user%3Aglutanimate&s=updated).\n\n#### addon.json\n\nAll of the metadata needed by `aab` to work correctly is stored in an `addon.json` file at the root of the project tree. For more information on its fields and their specifications please refer to the [schema file](./aab/schema.json).\n\n### License and Credits\n\n*Anki Add-on Builder* is *Copyright \u00a9 2019 [Aristotelis P.](https://glutanimate.com/) (Glutanimate)*\n\nAnki Add-on Builder is free and open-source software. Its source-code is released under the GNU AGPLv3 license, extended by a number of additional terms. For more information please see the [license file](https://github.com/glutanimate/anki-addon-builder/blob/master/LICENSE) that accompanies this program.\n\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY. Please see the license file for more details.", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/glutanimate/anki-addon-builder", "keywords": "anki development build-tools", "license": "", "maintainer": "", "maintainer_email": "", "name": "aab", "package_url": "https://pypi.org/project/aab/", "platform": "", "project_url": "https://pypi.org/project/aab/", "project_urls": { "Bug Reports": "https://github.com/glutanimate/anki-addon-builder/issues", "Funding": "https://glutanimate.com/support-my-work/", "Homepage": "https://github.com/glutanimate/anki-addon-builder", "Source": "https://github.com/glutanimate/anki-addon-builder" }, "release_url": "https://pypi.org/project/aab/0.1.4/", "requires_dist": null, "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, <4", "summary": "Anki Add-on Builder", "version": "0.1.4" }, "last_serial": 5348106, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "6a56a0f4734b7c0489ff31a23d178e1a", "sha256": "56fb2cdd38771c047341007d098b6135fa29e0d4e88c7cb3042b473426bfd0cb" }, "downloads": -1, "filename": "aab-0.1.0.tar.gz", "has_sig": false, "md5_digest": "6a56a0f4734b7c0489ff31a23d178e1a", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, <4", "size": 24526, "upload_time": "2019-05-04T18:16:44", "url": "https://files.pythonhosted.org/packages/6f/a9/797617cf65dcd6363f4925cfb7090153554aa369c35defd98813567880d5/aab-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "589e5794d6a4bf277252a9766b88f77a", "sha256": "51870e79763ac42ac1101efb753a9d2018e6b536d1d5b00c873c27f7bc0cc77b" }, "downloads": -1, "filename": "aab-0.1.1.tar.gz", "has_sig": false, "md5_digest": "589e5794d6a4bf277252a9766b88f77a", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, <4", "size": 24265, "upload_time": "2019-05-04T18:29:43", "url": "https://files.pythonhosted.org/packages/a2/66/25ed2d5bb4db8dcfa500fe7c7252030190790adeb9cf9cc36be084a28efe/aab-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "12cf2548769b33bf00778e877c39531b", "sha256": "a34d71f9ff3dd1c75f269f10d0b884e5b398a8378e01ec3a8c160938cb981311" }, "downloads": -1, "filename": "aab-0.1.2.tar.gz", "has_sig": false, "md5_digest": "12cf2548769b33bf00778e877c39531b", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, <4", "size": 24522, "upload_time": "2019-05-05T18:49:27", "url": "https://files.pythonhosted.org/packages/a4/24/7116f84c677f268f0b71310cd05a9dc80bf4a087835e4cb926f091c9417f/aab-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "2668a7da41e3a0786a1cf40442b54ae2", "sha256": "31712c991641b56cafcabebb8c1f99333499c1aa0c1e2e9287bd24823fe19785" }, "downloads": -1, "filename": "aab-0.1.3.tar.gz", "has_sig": false, "md5_digest": "2668a7da41e3a0786a1cf40442b54ae2", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, <4", "size": 24752, "upload_time": "2019-05-08T11:24:12", "url": "https://files.pythonhosted.org/packages/6a/4d/1c7af6c8126525b6ece9a9d3940c7d8d5e1a0a10de21a32ed50d1b0e3d88/aab-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "852cb4c19a143bac13f057782ca65844", "sha256": "1be9cd6dceac28c570df268a2aa20c1935a59043c88c9f4ce88a6d208e007d09" }, "downloads": -1, "filename": "aab-0.1.4.tar.gz", "has_sig": false, "md5_digest": "852cb4c19a143bac13f057782ca65844", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, <4", "size": 25476, "upload_time": "2019-06-02T07:32:30", "url": "https://files.pythonhosted.org/packages/6f/ed/641cffe0f801d4adc627f829199c5760f5e249738b25e01112cef5ec3228/aab-0.1.4.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "852cb4c19a143bac13f057782ca65844", "sha256": "1be9cd6dceac28c570df268a2aa20c1935a59043c88c9f4ce88a6d208e007d09" }, "downloads": -1, "filename": "aab-0.1.4.tar.gz", "has_sig": false, "md5_digest": "852cb4c19a143bac13f057782ca65844", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, <4", "size": 25476, "upload_time": "2019-06-02T07:32:30", "url": "https://files.pythonhosted.org/packages/6f/ed/641cffe0f801d4adc627f829199c5760f5e249738b25e01112cef5ec3228/aab-0.1.4.tar.gz" } ] }