diff --git a/CHANGELOG.md b/CHANGELOG.md
new file mode 100644
index 0000000..c59cc11
--- /dev/null
+++ b/CHANGELOG.md
@@ -0,0 +1,64 @@
+# Changelog
+
+All notable changes to this project will be documented in this file.
+
+The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
+and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
+
+## v0.2.0 (2023-02-01)
+
+### New Features
+
+ - now includes content length in etag
+
+### Commit Statistics
+
+
+
+ - 1 commit contributed to the release.
+ - 125 days passed between releases.
+ - 1 commit was understood as [conventional](https://www.conventionalcommits.org).
+ - 0 issues like '(#ID)' were seen in commit messages
+
+### Commit Details
+
+
+
+view details
+
+ * **Uncategorized**
+ - now includes content length in etag ([`fe10145`](https://github.com/chriswk/actix-middleware-etag/commit/fe10145fa730d9c45deb7e05c594ad5760b9761a))
+
+
+## v0.1.1 (2022-09-29)
+
+### Commit Statistics
+
+
+
+ - 13 commits contributed to the release over the course of 11 calendar days.
+ - 0 commits were understood as [conventional](https://www.conventionalcommits.org).
+ - 0 issues like '(#ID)' were seen in commit messages
+
+### Commit Details
+
+
+
+view details
+
+ * **Uncategorized**
+ - Added publish workflow ([`bd5cd24`](https://github.com/chriswk/actix-middleware-etag/commit/bd5cd246475d89a92fbaac2dd2899931eadd568b))
+ - Tighten dependencies ([`f9bd997`](https://github.com/chriswk/actix-middleware-etag/commit/f9bd99743929d6c6ff7d48ecf9a30fb18a11ce98))
+ - Updated with rust email address ([`c1c3209`](https://github.com/chriswk/actix-middleware-etag/commit/c1c32097d927772ab7fc66caa2d8aec868eba622))
+ - Added cargo tags ([`6f93359`](https://github.com/chriswk/actix-middleware-etag/commit/6f93359e059e0441dbe8322005bd9ca5d37ddac5))
+ - Update documentation to actually talk about our middleware ([`cea74b1`](https://github.com/chriswk/actix-middleware-etag/commit/cea74b1e3fa67eb7230640889a1833f1d67ce609))
+ - Mention expressjs middleware ([`8e94a50`](https://github.com/chriswk/actix-middleware-etag/commit/8e94a504857b82fac40d744b6c562a38ac8c4405))
+ - Updated with docs and only run on GETs ([`212d4b1`](https://github.com/chriswk/actix-middleware-etag/commit/212d4b1493f1a8885749a96209beae29e3bd8295))
+ - Fight the borrow checker and the borrow checker wins ([`e29b3ba`](https://github.com/chriswk/actix-middleware-etag/commit/e29b3baa261eadb397a8b817e67312161ddd17bb))
+ - Workflow for rust-cache is v2 ([`2790556`](https://github.com/chriswk/actix-middleware-etag/commit/2790556d3eb98a4f0873575b852f33d98ec18e84))
+ - Try to setup ci ([`03f259f`](https://github.com/chriswk/actix-middleware-etag/commit/03f259f270ffe483f8f37255a120c007f23f0c33))
+ - Added Header trait ([`0fe4a66`](https://github.com/chriswk/actix-middleware-etag/commit/0fe4a6656a1e8586d1b835a39a9fd92ef7e6320f))
+ - Added tests and a favicon to test hashing binary files ([`f8501f6`](https://github.com/chriswk/actix-middleware-etag/commit/f8501f6a8be81c04ec897906b272a19f3bf91b21))
+ - Initial implementation taken from https://gitlab.com/famedly/company/backend/libraries/actix-etags ([`33f33fe`](https://github.com/chriswk/actix-middleware-etag/commit/33f33fe44f12f3f15981d424d590a1dd12ad4237))
+
+