3 min read Author: klaas

A web based UI for redis based on PythonOnWheels. [redisui.py]

Started working with Redis and redis-py this week.

Really like both. But I wasn't able to find a nice GUI. Some were non multi platform others are not free anymore...

So I want to write a python Redis UI.

  • Multiplatform (web)
  • Exec python redis in a cli
  • server info
  • dashboard

weekend project ... ok, maybe two weekends ...

wait .. Just need a domain first ;)

So let's see how far I can come ... (started 14.9.2019)

Status: (15.9.2019)

First shot:

So now up for the websockets test...

  • ok, step by step: First websocket communication works.

And this is the end result for today (15.9.2019)


So websocket communication works.


Update from 18.9.2019

  • Made a new conncetion list screen
  • Connection ahndling (CRUD) works now. Just using the standard PythonOnWheels view scaffolding as a base.

Update 23.9.2019

  • keys can be scanned and the result is sent to the client.
  • The result is displayed in the UI. (List)

The <pre><code> box on the right will display the value for a selected key in the next step.

  • It shall be possible to edit the values directly and save /update the Value in redis.
  • Alignment needs to be done ... But pretty happy with this so far.

Update 24.09.2019

Changes:

  • Values are fetched, List is aligned,
  • Editor is there.
  • Now to the update.
  • Also added a mini cli ...

Update 25.09.2019

Begining to like it ; You can use it to display, update and delete data so far. Create needs to be added.

Changes:

  • Added a separate key input on top of the editor to make creating values easier
  • Update now changes the last_updates attribute automatically
  • delete works
  • added a create button
  • the room between the buttons will be the "feedback" space fot update, create, delete.

Uh, almost forgot. Connection handling works now. So if you connect, the connection is tested and you will be redirected to the connection_list view ...

Example:

Update from 28.09.2019

  • started to add tinydb support
  • added feature-branch tinydb
  • adapted the connections mode (added a connection type)
  • adapted the connections list view to display the new type
  • added a tinydbdash.tmpl (plain copy of redisdash for now)
  • Idea is to replace the redis/key list with a small table to the left of the editor
  • and add a one row table to the top to filter for column values using the tinyDB Querys.

And Oneliner Console is also working:

(be careful, no injection or other tests, just exec ... ;) => but that's ok, since you can do that with the pure redis.py client as well.


archivednostalgia ยท 2012โ€“2019