Metadata-Version: 2.5
Name: funread-api
Version: 1.1.125
Summary: funread 采集源管理后端服务
Project-URL: Organization, https://github.com/farfarfun
Project-URL: Repository, https://github.com/farfarfun/funread-api
Project-URL: Releases, https://github.com/farfarfun/funread-api/releases
Author-email: 牛哥 <niuliangtao@qq.com>, farfarfun <farfarfun@qq.com>
Maintainer-email: 牛哥 <niuliangtao@qq.com>, farfarfun <farfarfun@qq.com>
License-Expression: MIT
License-File: LICENSE
Requires-Python: >=3.12
Requires-Dist: aiomysql>=0.2.0
Requires-Dist: aiosqlite>=0.20.0
Requires-Dist: fastapi>=0.110.0
Requires-Dist: funauth[fastapi]>=0.2.3
Requires-Dist: funread[reader]>=1.1.124
Requires-Dist: itsdangerous>=2.1.0
Requires-Dist: pydantic>=2.0.0
Requires-Dist: requests>=2.28.0
Requires-Dist: sqlalchemy>=2.0.0
Requires-Dist: typer>=0.12
Requires-Dist: uvicorn[standard]>=0.27.0
Provides-Extra: dev
Requires-Dist: httpx2>=0.1.0; extra == 'dev'
Requires-Dist: httpx>=0.27.0; extra == 'dev'
Requires-Dist: pytest-cov>=4.0.0; extra == 'dev'
Requires-Dist: pytest>=7.0.0; extra == 'dev'
Requires-Dist: ruff>=0.1.0; extra == 'dev'
Description-Content-Type: text/markdown

# funread-api

`funread` 的后端服务，依赖 [funread](https://github.com/farfarfun/funread) 核心库并对外暴露 API，供
[funread-web](https://github.com/farfarfun/funread-web) 调用。搭配使用见
[funread-dev](https://github.com/farfarfun/funread-dev)。

## Install and run

Install a released version with `uv`:

```bash
uv tool install funread-api
```

The named CLI owns the server lifecycle:

```bash
funread-api server start
funread-api server status
funread-api server stop
funread-api server run --port 18811
funread-api server restart
```

The server listens on `127.0.0.1:18811` by default. `start` writes its PID and log to
`.run/funread-api.pid` and `.run/funread-api.log` below the current working directory;
`run` keeps the process in the foreground. Visit `/docs` for the API documentation and
`/healthz` for health checks.

For a repository checkout, `scripts/setup.sh` keeps installation separate from runtime:

```bash
scripts/setup.sh install-dev
scripts/setup.sh install-prod [version]
scripts/setup.sh publish
scripts/setup.sh start
scripts/setup.sh status
```

Runtime actions invoke only the installed `funread-api` CLI. The same CLI also provides
`upgrade [version]`, `rollback <version>`, and `uninstall`; the last action stops the
managed service before removing the package.

## Development

```bash
uv sync --extra dev
uv run pytest -q
uv run ruff check .
```

---

## 关于 farfarfun

[farfarfun](https://github.com/farfarfun) 是一个专注于实用工具库的开源组织，
涵盖云存储、数据处理、AI、多媒体与开发工具链等方向。

- 🏠 组织主页：<https://github.com/farfarfun>
- 📦 PyPI：<https://pypi.org/user/niuliangtao/>
- 📧 联系：farfarfun@qq.com

本项目基于 [MIT](LICENSE) 协议开源。
