Skip to main content

Shameless bootleg copy of flask-mongoengine for API Star.

Project description

development status pypi version build status coverage

Shameless bootleg copy of flask-mongoengine for API Star, modified for personal taste. Contributions are most welcome!

Installation

$ pip install apistar-mongoengine

Getting Started

For your classes, use Document from apistar_mongoengine.models.

from apistar_mongoengine.models import Document
from mongoengine import StringField

class TodoItem(Document):
    title = StringField(required=True)

Add MongoClientComponent to your app’s components to initialize the mongodb connection.

from apistar import App, Route
from apistar_mongoengine.components import MongoClientComponent
from yourapp.models import TodoItem

def list_items():
    return [
        item.title
        for item in TodoItem.objects.all()
    ]

routes = [
    Route(url='/items/', method='GET', handler=list_items),
]
components = [
    MongoClientComponent(host='mongodb://localhost:27017/todoapp'),
]

app = App(routes=routes, components=components)

if __name__ == '__main__':
    app.serve(host='127.0.0.1', port=5000, debug=True)

Check the example for more details.

Running tests and getting the overall coverage

  1. Install the required dependencies:

$ cd <project directory>
$ pipenv install
  1. Run flake8:

$ pipenv run flake8
  1. Run pytest with coverage flags:

$ pipenv run pytest --cov-report html --cov apistar_mongoengine/ --verbose
  1. Open ./htmlcov/index.html in your browser.

Contributing

Imposter syndrome disclaimer: We want your help. No, really.

There may be a little voice inside your head that is telling you that you’re not ready to be an open source contributor; that your skills aren’t nearly good enough to contribute. What could you possibly offer a project like this one?

We assure you - the little voice in your head is wrong. If you can write code at all, you can contribute code to open source. Contributing to open source projects is a fantastic way to advance one’s coding skills. Writing perfect code isn’t the measure of a good developer (that would disqualify all of us!); it’s trying to create something, making mistakes, and learning from those mistakes. That’s how we all improve, and we are happy to help others learn.

Being an open source contributor doesn’t just mean writing code, either. You can help out by writing documentation, tests, or even giving feedback about the project (and yes - that includes giving feedback about the contribution process). Some of these contributions may be the most valuable to the project as a whole, because you’re coming to the project with fresh eyes, so you can see the errors and assumptions that seasoned contributors have glossed over.

License

MIT licensed. Please see the bundled LICENSE file for more details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

apistar-mongoengine-0.0.6.tar.gz (6.1 kB view details)

Uploaded Source

File details

Details for the file apistar-mongoengine-0.0.6.tar.gz.

File metadata

File hashes

Hashes for apistar-mongoengine-0.0.6.tar.gz
Algorithm Hash digest
SHA256 8f17253ffc5fcb639d6cc18091fe415d0cbfc82dfdc8e8257a01fe7a9f0be387
MD5 6087a1015328b97035f7c38c0cb88855
BLAKE2b-256 91ca72e9645ad15101a19a5d6509ba25b5fbe237d11904e4ea970b927f0d79ec

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page