redisCall

This is your main interface into Redis which utilizes the
Custom Commands API
to be able to execute any arbitrary Redis command. It can either be called with a string similar to commands sent
with redis-cli, e.g:

{{ 'GET foo' | redisCall }}

This works for most Redis commands but uses internal heuristics to determine where to split the command into the multiple arguments that
redis-server natively understands. A more deterministic usage which doesn't rely on any heuristics is to pass an array of arguments:

{{ ['GET', 'foo'] | redisCall }}

redisCall returns either a single object for redis commands returning single values or a List or nested List of
objects for Redis commands returning complex Responses.

redisInfo

Returns the Redis Server Info from Redis Info command in a String Dictionary.

redisSearchKeys

Provides an efficient API for searching Redis Keys by utilizing
Redis's non-blocking SCAN command, to fetch results and a server-side LUA script
to populate the results with metadata. Results are returned in a typed List<RedisSearchResult>:

redisConnection

redisToConnectionString

Redis Examples

redis.web-app.io is a generic Redis Database Viewer that provides a human-friendly view
of any Redis data Type, including a dedicated UI to create and populate any Redis data type which was built using just
ServiceStack Templates and the above Redis Filters:

All functionality is maintained in a single index.html
weighing under <200 LOC including HTML and JavaScript. It's a good example of how the declarative style of programming
that ServiceStack Templates encourages a highly-readable code-base that packs a lot of functionality in a tiny foot print.

Populate redis with the Northwind database

You can use the
northwind-data
project to populate a Redis instance with Northwind test data by running:

dotnet run redis localhost:6379

Server Generated HTML

It's not immediatly obvious when running this locally since both Templates and Redis are super fast, but the Redis App was developed as
a traditional Website where all HTML is server-generated and every search box key stroke and click on search results performs
a full-page reload. There's a slight sub-second delay that causes a noticable flicker when hosted on the Internet due to network lag, but
otherwise server-generated Template Websites can enable a highly responsive UI (especially in Intranets) with great SEO and deep-linking
and back-button support working as expected without the complexity of adopting a client-side JavaScript SPA framework and build-system.