Skip to main content

A powerful framework enables fast and elegant development of Alfred Workflows in Python.

Project description

Documentation Status https://github.com/MacHu-GWU/afwf-project/actions/workflows/main.yml/badge.svg https://codecov.io/gh/MacHu-GWU/afwf-project/branch/main/graph/badge.svg https://img.shields.io/pypi/v/afwf.svg https://img.shields.io/pypi/l/afwf.svg https://img.shields.io/pypi/pyversions/afwf.svg https://img.shields.io/badge/✍️_Release_History!--None.svg?style=social&logo=github https://img.shields.io/badge/⭐_Star_me_on_GitHub!--None.svg?style=social&logo=github
https://img.shields.io/badge/Link-API-blue.svg https://img.shields.io/badge/Link-Install-blue.svg https://img.shields.io/badge/Link-GitHub-blue.svg https://img.shields.io/badge/Link-Submit_Issue-blue.svg https://img.shields.io/badge/Link-Request_Feature-blue.svg https://img.shields.io/badge/Link-Download-blue.svg

Welcome to afwf Documentation

https://afwf.readthedocs.io/en/latest/_static/afwf-logo.png

A powerful framework enables fast and elegant development of Alfred Workflows in Python.

Project Background

Alfred 官方的 Python 包 已经 5 年没有更新了, 而且只支持 Python2.7, 不支持 Python3. 因为 2.7 已经在 2020 年 1 月 1 日停止更新, 而且 MacOS 2021 年起操作系统内就不带 Python2.7 了, 所以这导致以前使用了官方包的 Workflow 对新 Mac 不再兼容. 并且由于兼容性和历史包袱的原因, 官方的 Python 包内置了太多本应由第三方库提供的功能, 例如 HTTP request, 缓存 等等, 而为了兼容性只能在垃圾代码上堆叠垃圾代码. 于是我就萌生了自己造一个轮子的想法.

我个人同时维护着 10 多个垂直领域的 Alfred Workflow, 早期我的源代码中包含了很多跟业务逻辑无关, 只用于和 Alfred 整合, 自动化测试, 以及元编程的代码. 这些代码在多个项目中有很多重复. 于是我认为有必要讲这些功能抽象出来, 将其封装为一个框架, 以便于在多个项目中复用, 于是就有了这个项目.

这个项目的目的是提供了用 Python 编写 Alfred Workflow 中需要用到的 Script Filter 的数据模型, 以及一套基于超大型内部企业项目 (我是 AWS 内部官方的 AWS Alfred Workflow 的作者) 经验总结出的一套开发 Python Alfred Workflow 的框架, 包含了项目生命周期中的开发, 测试, 发布, 快速迭代等最佳实践, 解决了 Workflow 中的控件太多, 测试不易等问题.

另外, 这个项目提供了互联网领域常用的图标, 你可以 在这里预览.

Install

afwf is released on PyPI, so all you need is:

$ pip install afwf

To upgrade to latest version:

$ pip install --upgrade afwf

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

afwf-1.0.1.tar.gz (31.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

afwf-1.0.1-py3-none-any.whl (31.6 kB view details)

Uploaded Python 3

File details

Details for the file afwf-1.0.1.tar.gz.

File metadata

  • Download URL: afwf-1.0.1.tar.gz
  • Upload date:
  • Size: 31.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for afwf-1.0.1.tar.gz
Algorithm Hash digest
SHA256 8897e1c43333e9d8fdbe6bbd63838078f983fc424734e4e898aa5a82a4c529dc
MD5 837b40eabbfdf1c39ae3904a56cfc50f
BLAKE2b-256 554f57a62ac57b460da957d635af653219ef0419673e550587b80cce260b06d7

See more details on using hashes here.

File details

Details for the file afwf-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: afwf-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 31.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for afwf-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 911674586d03daa07a5fae77742a5db79c710ed614fa051bfdc835726573896a
MD5 6218ff056d535132d4e3848ea436f14e
BLAKE2b-256 50a96bae93fb5a254484ae0a48fbefdac779a6ff8483b3ff1058d9a48c5602e6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page