From 5cdc555fb6020cbe06c6c895efe238c6e3588d97 Mon Sep 17 00:00:00 2001 From: Dan Jones Date: Mon, 21 Apr 2025 12:16:34 -0500 Subject: [PATCH] =?UTF-8?q?=F0=9F=93=9D=20Add=20README?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..160dc52 --- /dev/null +++ b/README.md @@ -0,0 +1,21 @@ +# ezcache + +ezcache is a simple in-memory cache for golang that has data expiry. + +## Usage + +```go +import "codeberg.org/danjones000/ezcache" + +// ... + +// Create a user cache which will cache users for five minutes +userCache := ezcache.New(func(id uint64) (User, error) { + // logic to fetch user from database + return User{}, nil +}, 5 * time.Minute) + +user, err := user.Get(userID) +// Next time you do user.Get with the same userID within five minutes, it will be fetched from cache. +// After five minutes, it will fetch from the database again. +```