> For the complete documentation index, see [llms.txt](https://dev.ppgg.in/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://dev.ppgg.in/architecture.md).

# 架构

- [架构](https://dev.ppgg.in/architecture/architecture.md)
- [架构决策记录 (ADR)](https://dev.ppgg.in/architecture/adr.md)
- [0001 - Angular Reactive Forms](https://dev.ppgg.in/architecture/adr/0001-angular-reactive-forms.md)
- [0002 - Public API for modules](https://dev.ppgg.in/architecture/adr/0002-public-api-for-modules.md)
- [0003 - Adopt Observable Data Services for Angular](https://dev.ppgg.in/architecture/adr/0003-adopt-observable-data-services-for-angular.md)
- [0004 - Refactor State Service](https://dev.ppgg.in/architecture/adr/0004-refactor-state-service.md)
- [0005 - Refactor Api Service](https://dev.ppgg.in/architecture/adr/0005-refactor-api-service.md)
- [0006 - Clients: Use Jest Mocks](https://dev.ppgg.in/architecture/adr/0006-clients-use-jest-mocks.md)
- [0007 - Manifest V3 sync Observables](https://dev.ppgg.in/architecture/adr/0007-manifest-v3-sync-observables.md)
- [0008 - Server: Adopt CQRS](https://dev.ppgg.in/architecture/adr/0008-server-adopt-cqrs.md)
- [0009 - Composition over inheritance](https://dev.ppgg.in/architecture/adr/0009-composition-over-inheritance.md)
- [0010 - Angular Modules](https://dev.ppgg.in/architecture/adr/0010-angular-modules.md)
- [0011 - Scalable Angular Clients folder structure](https://dev.ppgg.in/architecture/adr/0011-scalable-angular-clients-folder-structure.md)
- [0012 - Angular Filename convention](https://dev.ppgg.in/architecture/adr/0012-angular-filename-convention.md)
- [0013 - Avoid layered folder structure for request/response models](https://dev.ppgg.in/architecture/adr/0013-avoid-layered-folder-structure-for-request-response-models.md)
- [0014 - Adopt Typescript Strict flag](https://dev.ppgg.in/architecture/adr/0014-adopt-typescript-strict-flag.md)
- [0015 - Short Lived Browser Services](https://dev.ppgg.in/architecture/adr/0015-short-lived-browser-services.md)
- [0016 - Move Decryption and Encryption to Views](https://dev.ppgg.in/architecture/adr/0016-move-decryption-and-encryption-to-views.md)
- [0017 - Use Swift to build watchOS app](https://dev.ppgg.in/architecture/adr/0017-use-swift-to-build-watchos-app.md)
- [0018 - Feature management](https://dev.ppgg.in/architecture/adr/0018-feature-management.md)
- [0019 - Adoption of Web Push](https://dev.ppgg.in/architecture/adr/0019-adoption-of-web-push.md)
- [0020 - Observability with OpenTelemetry](https://dev.ppgg.in/architecture/adr/0020-observability-with-opentelemetry.md)
- [0021 - Logging to Standard Output](https://dev.ppgg.in/architecture/adr/0021-logging-to-standard-output.md)
- [=0022 - Authorization](https://dev.ppgg.in/architecture/adr/server-authorization.md)
- [=0023 - Identifying Integrated Clients](https://dev.ppgg.in/architecture/adr/integration-identifiers.md)
- [移动客户端架构](https://dev.ppgg.in/architecture/mobile-clients.md)
- [=Android](https://dev.ppgg.in/architecture/mobile-clients/android.md)
- [=iOS](https://dev.ppgg.in/architecture/mobile-clients/ios.md)
- [=推送通知故障排除提示](https://dev.ppgg.in/architecture/mobile-clients/ios/push-notification-troubleshooting.md)
- [=.NET MAUI (legacy)](https://dev.ppgg.in/architecture/mobile-clients/net-maui-legacy.md)
- [=概述](https://dev.ppgg.in/architecture/mobile-clients/net-maui-legacy/overview.md)
- [watchOS](https://dev.ppgg.in/architecture/mobile-clients/net-maui-legacy/watchos.md)
- [=SDK 架构](https://dev.ppgg.in/architecture/sdk.md)
- [=数据模型](https://dev.ppgg.in/architecture/sdk/data-models.md)
- [=依赖](https://dev.ppgg.in/architecture/sdk/dependencies.md)
- [Password Manager](https://dev.ppgg.in/architecture/sdk/password-manager.md)
- [Web](https://dev.ppgg.in/architecture/sdk/password-manager/web.md)
- [=互操作性](https://dev.ppgg.in/architecture/sdk/password-manager/web/interoperability.md)
- [=Secrets Manager](https://dev.ppgg.in/architecture/sdk/secrets-manager.md)
- [=服务器绑定](https://dev.ppgg.in/architecture/sdk/server-bindings.md)
- [=版本控制和破坏性更改](https://dev.ppgg.in/architecture/sdk/versioning.md)
- [网络客户端架构](https://dev.ppgg.in/architecture/clients.md)
- [概述](https://dev.ppgg.in/architecture/clients/overview.md)
- [数据模型](https://dev.ppgg.in/architecture/clients/data-model.md)
- [表示层](https://dev.ppgg.in/architecture/clients/presentation.md)
- [Angular](https://dev.ppgg.in/architecture/clients/presentation/angular.md)
- [CLI](https://dev.ppgg.in/architecture/clients/presentation/cli.md)
- [=依赖注入](https://dev.ppgg.in/architecture/clients/dependency-injection.md)
- [服务层](https://dev.ppgg.in/architecture/clients/services.md)
- [Vision](https://dev.ppgg.in/architecture/clients/services/vision.md)
- [实现](https://dev.ppgg.in/architecture/clients/services/implementation.md)
- [服务器架构](https://dev.ppgg.in/architecture/server.md)
- [深度剖析](https://dev.ppgg.in/architecture/deep-dives.md)
- [身份验证](https://dev.ppgg.in/architecture/deep-dives/authentication.md)
- [双重身份验证](https://dev.ppgg.in/architecture/deep-dives/authentication/two-factor-auth.md)
- [=授权](https://dev.ppgg.in/architecture/deep-dives/authorization.md)
- [=浏览器自动填充](https://dev.ppgg.in/architecture/deep-dives/autofill.md)
- [收集页面详细信息](https://dev.ppgg.in/architecture/deep-dives/autofill/collecting-page-details.md)
- [生成并执行填充脚本](https://dev.ppgg.in/architecture/deep-dives/autofill/generating-fill-scripts.md)
- [表单提交检测](https://dev.ppgg.in/architecture/deep-dives/autofill/form-submission-detection.md)
- [Shadow DOM](https://dev.ppgg.in/architecture/deep-dives/autofill/shadow-dom.md)
- [=内联自动填充菜单](https://dev.ppgg.in/architecture/deep-dives/autofill/autofill-menu.md)
- [Captcha](https://dev.ppgg.in/architecture/deep-dives/captchas.md)
- [=只读数据库副本](https://dev.ppgg.in/architecture/deep-dives/database-replicas.md)
- [事件日志](https://dev.ppgg.in/architecture/deep-dives/event-logs.md)
- [=FIDO2 和通行密钥](https://dev.ppgg.in/architecture/deep-dives/passkeys.md)
- [=凭据](https://dev.ppgg.in/architecture/deep-dives/passkeys/credentials.md)
- [=操作](https://dev.ppgg.in/architecture/deep-dives/passkeys/operations.md)
- [=命名惯例](https://dev.ppgg.in/architecture/deep-dives/passkeys/naming-convention.md)
- [=实现](https://dev.ppgg.in/architecture/deep-dives/passkeys/implementations.md)
- [=提供程序](https://dev.ppgg.in/architecture/deep-dives/passkeys/implementations/provider.md)
- [=浏览器扩展](https://dev.ppgg.in/architecture/deep-dives/passkeys/implementations/provider/browser-extension.md)
- [=依赖方](https://dev.ppgg.in/architecture/deep-dives/passkeys/implementations/relying-party.md)
- [=用于解密的通行密钥](https://dev.ppgg.in/architecture/deep-dives/passkeys/implementations/relying-party/prf.md)
- [=术语表](https://dev.ppgg.in/architecture/deep-dives/passkeys/glossary.md)
- [推送通知](https://dev.ppgg.in/architecture/deep-dives/push-notifications.md)
- [移动端推送通知](https://dev.ppgg.in/architecture/deep-dives/push-notifications/mobile.md)
- [其他客户端推送通知](https://dev.ppgg.in/architecture/deep-dives/push-notifications/non-mobile.md)
- [=SSH 密钥和代理](https://dev.ppgg.in/architecture/deep-dives/ssh.md)
- [=SSH 代理](https://dev.ppgg.in/architecture/deep-dives/ssh/agent.md)
- [=状态提供程序框架](https://dev.ppgg.in/architecture/deep-dives/state.md)
- [=派生状态](https://dev.ppgg.in/architecture/deep-dives/state/derived-state.md)
- [=安全](https://dev.ppgg.in/architecture/security.md)
- [=定义](https://dev.ppgg.in/architecture/security/definitions.md)
- [=原则](https://dev.ppgg.in/architecture/security/principles.md)
- [=P01 - 锁定的密码库是安全的](https://dev.ppgg.in/architecture/security/principles/locked-vault-is-secure.md)
- [=P02 - 半受损设备密码库的有限安全性](https://dev.ppgg.in/architecture/security/principles/limited-security-on-semi-compromised.md)
- [=P03 - 完全损坏的系统没有安全性](https://dev.ppgg.in/architecture/security/principles/no-security-on-fully-compromised.md)
- [=P04 - 控制密码库数据的访问权限](https://dev.ppgg.in/architecture/security/principles/controlled-access.md)
- [=P05 - 将安全漏洞的影响降至最低](https://dev.ppgg.in/architecture/security/principles/minimized-impact-of-security-breaches.md)
- [=要求](https://dev.ppgg.in/architecture/security/requirements.md)
