A CLI to interact with a global trie data structure.
Project description
trie-cli
A CLI to interact with a global trie data structure.
Installation
Use the package manager pip to install trie-cli.
pip install trie-cli
Usage
The CLI includes methods to modify the global state of a trie hosted online.
Insert a keyword into the trie:
trie-cli insert [YOUR KEYWORD]
Delete a keyword from the trie:
trie-cli delete [YOUR KEYWORD]
Search for a keyword in the trie (returns True if the keyword is found/False if not):
trie-cli search [YOUR KEYWORD]
Return a list of autocomplete suggestions based on an input prefix
trie-cli autcomplete [YOUR PREFIX]
Display the trie (keywords are indicated with a * at the end of the node name):
trie-cli display
For detailed information on command format, run trie-cli --help
.
Server
The trie-cli global state methods run on a Flask server hosted in Heroku. The global state of the trie is stored in a Neo4j graph database running in Neo4j Sandbox. Use the following REST endpoints to test the server.
Name | Method | curl |
---|---|---|
insert | PUT | curl -X PUT -H "Content-Type: application/json" -d '{"keyword"="[YOUR KEYWORD]"} "https://gentle-brushlands-20368.herokuapp.com/insert" |
delete | DELETE | curl -X DELETE "https://gentle-brushlands-20368.herokuapp.com/delete?keyword=[YOUR KEYWORD]" |
search | GET | curl -X GET "https://gentle-brushlands-20368.herokuapp.com/search?keyword=[YOUR KEYWORD]" |
autocomplete | GET | curl -X GET "https://gentle-brushlands-20368.herokuapp.com/autocomplete?prefix=[YOUR PREFIX]" |
display | GET | curl -X GET "https://gentle-brushlands-20368.herokuapp.com/display" |
The CLI uses the requests
Python library to call the server endpoints.
Tests
A list of commands for testing the CLI can be found in tests.sh
.
Sources Consulted
CLI:
Neo4J:
Heroku:
PyPI:
License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.