Giter Site home page Giter Site logo

orpheus's People

Contributors

radagaisus avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

Forkers

nvdnkpr

orpheus's Issues

Dynamic keys: create a set behind-the-scenes with all the dynamic keys names

Great for iterating over dynamic keys.

Assuming:

@zset 'books', key: (author) -> "books:#{author}"

Allow developers to query a books_keys for all the dynamic keys that were generated. Or, .dynamic_keys_for('books'), or .keys_for('books'), or .keys('books'), or other options.

The end-developers will manually need to remove items from these lists, as there's no easy (or necessary) way to automatically do this for them.

Update node-redis package

Currently using 0.12.1 of redis package, which is a very old and obsolete version.
Furthermore: it poses a challenge as it cause bugs and instability with node version 4.0 and greater.

As the node-redis project came back to life, and is highly maintained, we can keep using it as the base driver and drop issue #21 to move to ioredis.

Ability to set commands on the model's main hash

  • Ability to set commands on the model's main hash e.g. expire, ttl, etc.
  • The main hash stores the @str and @num attributes of the model.
  • We'll need a way to reference it. Options:
    • User(id).some_string_attribute.expire() - will expire the entire hash
    • User(id).main.expire() - use mainor another name to access the hash
    • User(id).expire() - add it directly to the model, though expire() here will only expire the hash and not all the model keys. It's possible for us to expire most of the model keys, but not dynamic keys.
    • User(id).command() - a slightly nicer @_commands.push []

Add type definition

Support in Typescript could be useful, therefore Orpheus must have type definition.

Accept and discard empty arrays in lpush

An lpush (or any other list insertion) should simply be discarded on empty arrays as arguments. This saves annoying checks like activities.lpush(activities) if activities.length throughout the code.

Better dynamic keys syntax

Give an overhaul improvement to the dynamic key syntax to make it easier to understand and more intuitive.
e.g: when changing a dynamic key value, it should be possible to send the key in a string rather than be forced to send it as an array,

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.