diff --git a/.env.example b/.env.example
index 5d119ee..1fe9b06 100644
--- a/.env.example
+++ b/.env.example
@@ -39,7 +39,7 @@ NOSTR_RELAY_URLS=ws://localhost:10547
# External Source Adapters Configuration
# Comma-separated list of adapter IDs to enable
# Available adapters: arasaac
-# Example: ENABLED_ADAPTERS=arasaac
+# Example: ENABLED_ADAPTERS=arasaac,openverse
# ENABLED_ADAPTERS=
# Timeout for adapter requests in milliseconds (default: 3000)
diff --git a/Dockerfile b/Dockerfile
index 126423a..1f5a704 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -39,6 +39,7 @@ USER node
COPY --chown=node:node package.json pnpm-workspace.yaml pnpm-lock.yaml $APP_PATH/
COPY --chown=node:node packages/oer-adapter-core $APP_PATH/packages/oer-adapter-core/
COPY --chown=node:node packages/oer-adapter-arasaac $APP_PATH/packages/oer-adapter-arasaac/
+COPY --chown=node:node packages/oer-adapter-openverse $APP_PATH/packages/oer-adapter-openverse/
RUN pnpm install
COPY --chown=node:node src tsconfig.build.json tsconfig.json $APP_PATH/
diff --git a/README.md b/README.md
index cbf61d0..aebb305 100644
--- a/README.md
+++ b/README.md
@@ -1,5 +1,19 @@
# Nostr OER Finder - Aggregator and Plugin
+An Open Educational Resources (OER) discovery system built on Nostr, providing:
+
+1. **Aggregator Service**: Listens to configurable Nostr relays for OER image resources, collects them, and exposes them via a public API. Can also proxy to external OER sources through an **extendable adapter system** - add your own adapters to integrate any external API.
+2. **Source Adapters**: Pluggable adapters for external OER sources (e.g., ARASAAC) that integrate seamlessly with search results. The adapter plugin system makes it easy to add new sources.
+3. **JavaScript Packages**: Type-safe API client and web components for integrating OER resources into applications
+
+**Motivation**: Instead of configuring for each new educational app new OER sources, this project aims to offer a meta search with reusable web components. The idea is to make it as easy as possible to install a OER search component in any Javascript application with multiple sources preconfigured. The main idea started to listen for OER Nostr events. But as this network must be estabilished first, additional sources were introduced.
+
+## Demo of the configurable Web Components
+
+The screenshot shows an example of using Openverse as a OER source for the keyword "car".
+
+## Overview
+
```
┌───────────────────────────────────────────────────────────────────┐
│ Your Application │
@@ -29,20 +43,10 @@
│ │ │
▼ ▼ ▼
┌────────┐ ┌──────────┐ ┌──────────┐
- │ARASAAC │ │ Future │ │ Future │
+ │ARASAAC │ │ Openverse│ │ Future │
└────────┘ └──────────┘ └──────────┘
```
-An Open Educational Resources (OER) discovery system built on Nostr, providing:
-
-1. **Aggregator Service**: Listens to configurable Nostr relays for OER image resources, collects them, and exposes them via a public API. Can also proxy to external OER sources through an **extendable adapter system** - add your own adapters to integrate any external API.
-2. **Source Adapters**: Pluggable adapters for external OER sources (e.g., ARASAAC) that integrate seamlessly with search results. The adapter plugin system makes it easy to add new sources.
-3. **JavaScript Packages**: Type-safe API client and web components for integrating OER resources into applications
-
-## Demo of the configurable Web Components
-
-
-
## Quick Start
### Development Server Setup
@@ -143,6 +147,7 @@ pnpm add @edufeed-org/oer-finder-plugin
- **[Server Setup](./docs/server-setup.md)** - Installation, configuration, development, and testing
- **[Client Packages](./docs/client-packages.md)** - API client and web components usage
- **[Client Packages Examples for Angular](./docs/client-packages-angular.md)** - Web components usage in Angular
+- **[Client Packages Examples for Svelte](./docs/client-packages-svelte.md)** - Web components usage in Svelte
- **[Client Packages Examples for React](./docs/client-packages-react.md)** - React component wrappers usage
### Architecture & Design
diff --git a/docs/client-packages-svelte.md b/docs/client-packages-svelte.md
index 4a533eb..d10a3ca 100644
--- a/docs/client-packages-svelte.md
+++ b/docs/client-packages-svelte.md
@@ -10,7 +10,7 @@ For installation, see [Client Packages (Web Components Plugin)](./client-package
The recommended pattern is to slot `` and `` inside `` for automatic pagination handling.
-```svelte
+```javascript