diff --git a/README.md b/README.md
index 7248f9f..2e869b4 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-
+
-Async is a synchronization and asynchronous computation package for Go.
-## Overview
+Async provides a comprehensive set of synchronization primitives and asynchronous computation utilities for Go, complementing the standard library with additional concurrency patterns and data structures.
+
+## Features
* **ConcurrentMap** - Implements the generic `async.Map` interface in a thread-safe manner by delegating load/store operations to the underlying `sync.Map`.
* **ShardedMap** - Implements the generic `async.Map` interface in a thread-safe manner, delegating load/store operations to one of the underlying `async.SynchronizedMap`s (shards), using a key hash to calculate the shard number.
* **Future** - A placeholder object for a value that may not yet exist.
@@ -23,7 +24,7 @@ Async is a synchronization and asynchronous computation package for Go.
* **PriorityLock** - A non-reentrant mutex that allows for the specification of lock acquisition priority.
## Examples
-Can be found in the examples directory/tests.
+Runnable examples are available in the [examples](./examples) directory. See the test files for additional usage examples.
## License
Licensed under the MIT License.
diff --git a/docs/images/async.png b/docs/images/async.png
index 1310491..b69fcda 100644
Binary files a/docs/images/async.png and b/docs/images/async.png differ