You're Invited:Meet the Socket Team at BlackHat and DEF CON in Las Vegas, Aug 4-6.RSVP
Socket
Book a DemoInstallSign in
Socket

modstore

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

modstore

Basic and Modded data structures with rust backend for speed.

3.0.0
PyPI
Maintainers
1

Badges

Unit Tests Build codecov Downloads

Modstore

This is a one stop library for all your data structure and algorithm needs. Modstoreprovides several python and rust (leveraging it's speed and reliability) based data-structures and algorithms. The Data Structures offered by modstore are custom built and well-written to simulate the structure rules.

Due to increasing code base, A proper README is in the works. For Convenience, all instructions are added in the docstrings of the classes and functions.

Module Pathways for importing.

  • Data Structures

    from modstore.datastructures import (
        # HashTable
        HashMap, # Normal Key-Value Pair Type HashTable.
        AutoHashMap, # Uses hash function for keys, user provides values.
        
        # Built-in upgrade
        List, # Modified List.
        
        # New, Stack
        Stack, # Actual Stack.
    
        # New, Queue
        Queue, # Queue (supports dequeue, circular implementation for definite capacity)
        PriorityQueue, # (supports dequeue, circular implementation for definite capacity)
        priority, # A class for extended PriorityQueue customization.
    
        # New, Singly Linked List
        SingleLinkNode, # Node class for Singly Linked List
        LinkedListOne, # Singly Linked List 
    
        # New, LRU Cache (implemented using singly linked list)
        LRUCache,
    
        # New, Doubly Linked List
        DoubleLinkNode, # Node class for doubly linked list
        LinkedListTwo, # Doubly Linked List
    
        # New, Blockchain
        BlockChain, # Blockchain data structure
        Block, # Block class, cannot be initialized, only for internal purposes.
    
        # New, Directed Acyclic Graphs (DAG)
        DAG,
    
        # Coming soon
        MultiLinkNode, # node class for multi nodes
        LinkedListMulti, # Multi linked list
        BinaryNode, # Node class for Binary Tree
        BinaryTree, # BinaryTree class.
    )
    
  • Algorithms

    from modstore.algorithms.searching import (
        Search, # A class that contains static methods for searching
        SearchObject, # A class to define one object that can be searched using different algorithms,
    )
    
    from modstore.algorithms.sorting import (
        Sort, # A class that contains static methods for sorting
        SortObject, # A class to define one object that can be sorted using different algorithms.
    )
    
  • Prototype for modkit.

    modkit is a new lib for programming tools, got more than 51k downloads in the first week. The prototype for the same can be found under:

    from modstore.tools import (
        classtools, # aliased as override in modkit
    
        CustomBoolean, # aliased as Possibility in modkit
    
        Property, # aliased as the same name in modkit.
    )
    

Install from scratch

Make sure you have cargo installed (Rust) and VS Build Tools for C++ (for windows)

git clone https://github.com/d33p0st/modstore.git
python -m pip install --upgrade pip
pip install maturin
cd modstore
maturin develop
pip install .

Issues

Feel free to submit any issues here.

Pull Requests

Submit pull requests here.

FAQs

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts