Skip to content

mongodb/docs-coding-challenge

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

The Challenge

Hopps is a simple document history-preserving key-value store built on top of MongoDB and Python.

Your task, should you chose to accept it, is to document the Hopps API and structure.

Goals

Fill in the file docs.txt with documentation covering hopps.py. Use your best judgment! It is deliberately vague and slim.

Setup

To work with Hopps, you will need Python 3.4 or later. On OS X and Windows, use the installer from Python.org.

Next, you should set up a virtual environment. From within this repository, run:

pyvenv venv
. venv/bin/activate
pip install tornado motor docopt typing

Ensure that you have MongoDB 3.2 or later installed from the MongoDB Download Center.

Start a MongoDB instance:

mkdir data
mongod --dbpath=`pwd`/data --logpath mongod.log --fork

sample.py demonstrates use of hopps.py, and cli.py provides a simple prompt interface for saving and retrieving documents.

Start Hopps:

./sample.py

And in a new terminal, run the following:

./cli.py
help

Usage

Once you have started an instance and started the CLI tool, you can begin to issue commands. For example, run the following command:

save foo '{"_id": "ff36cf3a-fd3b-431e-863e-5dc89d4f075e", "name": "Bob", "n": 42}'

This will save a document into the foo collection. Nothing will be printed until you press return a second time.

To retrieve the document, run the following command and again press return:

get foo ff36cf3a-fd3b-431e-863e-5dc89d4f075e

About

MongoDB Documentation Team coding challenge

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages