acyclic_steps
一個顯式的無環步驟依賴框架,支援平行評估與依賴注入。
精美的 Dart 套件。
一個顯式的無環步驟依賴框架,支援平行評估與依賴注入。
用於標準化 JSON 格式的編碼器與解碼器,適用於對 JSON 物件進行加密雜湊或簽名時。
用於處理分塊串流的工具,例如字節串流,通常以類型為 `Stream>` 的字節區塊串流形式提供。
所有已由 IANA 註冊的 HTTP 方法清單,以字串形式列出,並包含例如方法是否具有冪等性的元資料。
一個整潔的快取抽象,用於包裝記憶體或 Redis 快取。
用於在長時間執行的流程(例如 Web 伺服器)中可靠地執行週期性任務的輔助類別。
遵循 RFC 7468 的 PEM 編碼/解碼,支援寬鬆/嚴格模式,以及由多個 PEM 塊串接而成的憑證鏈。
用於將非同步函數包裝在自動重試邏輯中,並具有指數退避,適用於透過網路進行請求時使用。
檢查不受信任的 URL 是否已損壞,同時不允許連接到私人 IP 位址。
用於透過將元素和屬性限制為允許值的安全子集來防止 XSS 的 HTML 淨化函數。
適用於URL的UUIDv4的Base64編碼,已移除填充。在URL中嵌入短隨機UUID時非常有用。
^6.0.0以下為英文專案原文快照,最新內容請造訪 GitHub。
A collection of a small neat packages for dart.
Disclaimer: This is not an officially supported Google product.
This repository is meant as a playground where small neat packages are cultivated. If package grows too large and complex and needs a dedicated issue tracker it should be moved to a dedicated repository.
Each folder in this repository contains a neat pub package. This project
aims to use a separate package whenever it makes sense to have an independent
major version. This often means splitting functionality into separate packages,
which can be reused independently.
| Package | Description | Version | Test |
|---|---|---|---|
| acyclic_steps | An explicit acyclic step dependency framework with concurrent evaluation and dependency injection. | pub package | acyclic_steps |
| canonical_json | Encoder and decoder for a canonical JSON format, useful when cryptographically hashing or signing JSON objects. | pub package | canonical_json |
| chunked_stream | Utilities for working with chunked streams, such as byte streams which is often given as a stream of byte chunks with type Stream<List<int>>. |
pub package | chunked_stream |
| dartdoc_test | Utilities for testing code snippets embedded in documentation comments. | pub package | dartdoc_test |
| http_methods | List of all HTTP methods registered with IANA as list of strings, and metadata such as whether a method idempotent. | pub package | http_methods |
| neat_cache | A neat cache abstraction for wrapping in-memory or redis caches. | pub package | neat_cache |
| neat_periodic_task | Auxiliary classes for reliably running a periodic task in a long-running process such as web-server. | pub package | neat_periodic_task |
| pem | PEM encoding/decoding of textual keys following RFC 7468, supporting both lax/strict-mode, and certificates chains of concatenated PEM blocks. | pub package | pem |
| retry | Utility for wrapping an asynchronous function in automatic retry logic with exponential back-off, useful when making requests over network. | pub package | retry |
| safe_url_check | Check if an untrusted URL is broken, without allowing connections to a private IP address. | pub package | safe_url_check |
| sanitize_html | Function for sanitizing HTML to prevent XSS by restrict elements and attributes to a safe subset of allowed values. | pub package | sanitize_html |
| slugid | A URL-safe base64 encoding for UUIDv4 stripped of padding. Useful when embedding short random UUIDs in URLs. | pub package | slugid |
| typed_sql | Package for doing SQL with some type safety. | pub package | typed_sql |
| vendor | Utility for vendoring packages into a project and rewriting import/export statements. | pub package | vendor |
Packages in this repository uses pub workspaces
a single dart pub get will resolve dependencies for all of them.
Configuration of Github Actions, issue templates, issue labels, etc is automated
with scripts in tool/.
We love patches and contributions, please refer to CONTRIBUTING.md for technicalities on CLA and community guidelines. As this project aims to build neat packages using other neat packages we might also accept proposals for new neat packages, though it's often easier to publish independently.
Unless stated otherwise contents in this repository is licensed under Apache License 2.0, see LICENSE.