Add documentation for data types #15

Merged
ddevault merged 3 commits from :documentation-for-datatypes into main 2024-04-01 11:56:22 +02:00
Owner
* Based on https://codeberg.org/redict/redict-doc * Adjusted for Hugo * Removed references to proprietary extensions from Redis * Clean up
* Based on https://codeberg.org/redict/redict-doc
* Adjusted for Hugo
* Removed references to proprietary extensions from Redis
* Clean up
ddevault requested changes 2024-03-31 22:21:57 +02:00
Dismissed
ddevault left a comment

Nice work!

Nice work!
@ -0,0 +4,4 @@
linkTitle: "Data Types"
description: Overview of data types supported by Redict
weight: 4
---
Owner

Can you remove unused fields (e.g. linkTitle and description)?

This should also have a shorter name so it doesn't stick out so sorely in the navigation: "Data types"?

Can you remove unused fields (e.g. linkTitle and description)? This should also have a shorter name so it doesn't stick out so sorely in the navigation: "Data types"?
Author
Owner

Both fields are used. linkTitle is the title used in the navigation. This is how the navigation looks like on this branch:

The navigation features short titles like "Data Types"

The description field is also used for the meta description:

<meta name="description" content="Overview of data types supported by Redict">
Both fields are used. `linkTitle` is the title used in the navigation. This is how the navigation looks like on this branch: ![The navigation features short titles like "Data Types"](https://images.dohmen.io/2024-03-31-redict-navi.png) The `description` field is also used for the meta description: ```html <meta name="description" content="Overview of data types supported by Redict"> ```
ddevault marked this conversation as resolved
@ -0,0 +8,4 @@
# Understanding Redict Data Types
Redict is a data structure server. At its core, Redict provides a collection of native data types that help you solve a wide variety of problems, from [caching](/docs/manual/client-side-caching/) to [queuing](/docs/data-types/lists/) to [event processing](/docs/data-types/streams/). Below is a short description of each data type, with links to broader overviews and command references.
Owner

I ran into this with the scripting docs as well, but we have some links like this which lead to content that does not exist on redict.io. Should we just leave it here and do another pass over all of the links once we finish importing everything we intend to bring in from redict-doc?

I ran into this with the scripting docs as well, but we have some links like this which lead to content that does not exist on redict.io. Should we just leave it here and do another pass over all of the links once we finish importing everything we intend to bring in from redict-doc?
Author
Owner

Yes, I think we should port over the content, and then run a dead link checker on the entire site.

Yes, I think we should port over the content, and then run a dead link checker on the entire site.
ddevault marked this conversation as resolved
@ -0,0 +106,4 @@
## Learn more
* [Redis Bitmaps Explained](https://www.youtube.com/watch?v=oj8LdJQjhJo) teaches you how to use bitmaps for map exploration in an online game.
* [Redis University's RU101](https://university.redis.com/courses/ru101/) covers Redis bitmaps in detail.
Owner

I don't think we should lead into Redis content unless we have to (e.g. by referencing the RESP specification).

I don't think we should lead into Redis content unless we have to (e.g. by referencing the RESP specification).
Author
Owner

Works for me! I will remove all links to their YouTube channel and University.

Works for me! I will remove all links to their YouTube channel and University.
ddevault marked this conversation as resolved
@ -0,0 +203,4 @@
implement background jobs.
The popular Twitter social network [takes the latest tweets](http://www.infoq.com/presentations/Real-Time-Delivery-Twitter)
posted by users into Redict lists.
Owner

nit: these presumably still use Redis and/or may use another fork, perhaps we shouldn't boldly claim that they use Redict lists for their use-cases?

nit: these presumably still use Redis and/or may use another fork, perhaps we shouldn't boldly claim that they use Redict lists for their use-cases?
Author
Owner

I guess the same is true for:

For example both the popular Ruby libraries resque and sidekiq use Redict lists under the hood in order to implement background jobs.

I guess the same is true for: > For example both the popular Ruby libraries resque and sidekiq use Redict lists under the hood in order to implement background jobs.
@ -0,0 +142,4 @@
### Lexicographical scores
In version Redict 2.8, a new feature was introduced that allows
Owner

Do a quick sweep for non-existent Redict versions. Use your discretion to either rewrite to say "since Redis x.y", or remove it entirely as the old usage is obsolete for Redict users.

Do a quick sweep for non-existent Redict versions. Use your discretion to either rewrite to say "since Redis x.y", or remove it entirely as the old usage is obsolete for Redict users.
Author
Owner

Done!

Done!
@ -0,0 +114,4 @@
To perform bitwise operations on a string, see the [bitmaps data type](/docs/data-types/bitmaps) docs.
See the [complete list of string commands](/commands/?group=string).
Owner

I don't think this ?group=whatever thing works on our command list page

I don't think this `?group=whatever` thing works on our command list page
Author
Owner

You are right, I rewrote a few, but seem to have missed this one! Good catch 👍

You are right, I rewrote a few, but seem to have missed this one! Good catch 👍
@ -2,3 +2,3 @@
title: Scripting Redict with Lua
bookCollapseSection: true
weight: 4
weight: 5
Owner

These can both share a weight of 4 and they'll just be alpha-sorted, which will have the same effect and won't require as much finagling as we add more content.

These can both share a weight of 4 and they'll just be alpha-sorted, which will have the same effect and won't require as much finagling as we add more content.
Author
Owner

Yes. Maybe we can briefly decide the order of the navigation, including the upcoming "Usage" section discussed in #15. I propose:

  • Installation
  • Command Reference
  • Data Types
  • Usage
  • Clients
  • Modules
  • Scripting with Lua
  • Compatability with Redis
  • Community Resources
  • About the license
  • Source Code
  • Blog

If that works for you, I will adjust the weights in this PR.

Yes. Maybe we can briefly decide the order of the navigation, including the upcoming "Usage" section discussed in #15. I propose: * Installation * Command Reference * Data Types * Usage * Clients * Modules * Scripting with Lua * Compatability with Redis * Community Resources * About the license * Source Code * Blog If that works for you, I will adjust the weights in this PR.
Owner

I think Usage should come immediately after Installation but otherwise I agree with this ordering.

I think Usage should come immediately after Installation but otherwise I agree with this ordering.
* Remove links to Redis YouTube and University
* For external tools that use Redis, do not claim they use Redict
* Fix the heading structure
* Remove references to old versions of Redis
ddevault approved these changes 2024-04-01 11:47:27 +02:00
ddevault left a comment

Approved pending weight adjustements

Can you make the weights powers of ten so that we can more easily add stuff between them without having to renumber everything?

Approved pending weight adjustements Can you make the weights powers of ten so that we can more easily add stuff between them without having to renumber everything?
Author
Owner

Adjusted the order in the navigation, it looks like this now:

Order: Installation, Command Reference, Data Types, Usage, Clients, Modules, Scripting with Lua, Compatibility with Redis, Community Resources, About the license, Source Code, Blog

Adjusted the order in the navigation, it looks like this now: ![Order: Installation, Command Reference, Data Types, Usage, Clients, Modules, Scripting with Lua, Compatibility with Redis, Community Resources, About the license, Source Code, Blog](https://images.dohmen.io/2024-04-01-redict-navi.png)
Owner

Hm? That ordering is not consistent with my suggestion earlier.

Hm? That ordering is not consistent with my suggestion earlier.
Author
Owner

To me, the "Redict Modules" should be "Modules" and "Scripting Redict with Lua" should be "Scripting with Lua" in the navigation. What do you think?

To me, the "Redict Modules" should be "Modules" and "Scripting Redict with Lua" should be "Scripting with Lua" in the navigation. What do you think?
Author
Owner

@ddevault Sorry, I did not see that comment. Will adjust it 👍

@ddevault Sorry, I did not see that comment. Will adjust it 👍
Owner

Thanks!

Thanks!
Author
Owner

Adjusted:

  • Weights * 10
  • Order as suggested
  • Drop "Redict" from the link titles in the navigation

Result
Order: Installation, Usage, Command Reference, Data Types, Clients, Modules, Scripting with Lua, Compatibility with Redis, Community Resources, About the license, Source Code, Blog

Adjusted: * Weights * 10 * Order as suggested * Drop "Redict" from the link titles in the navigation Result ![Order: Installation, Usage, Command Reference, Data Types, Clients, Modules, Scripting with Lua, Compatibility with Redis, Community Resources, About the license, Source Code, Blog](https://images.dohmen.io/2024-04-01-redict-navi-2.png)
Owner

Sorry, I thought you said you would re-adjust them in a follow-up pull request. Can you do that?

Sorry, I thought you said you would re-adjust them in a follow-up pull request. Can you do that?
Author
Owner

@ddevault Yep, coming up 👍

@ddevault Yep, coming up 👍
Sign in to join this conversation.
No description provided.