Eve: Building RESTful APIs with MongoDB and Flask Transcripts
Chapter: What is Eve?
Lecture: What is Eve and why it was built
Login or
purchase this course
to watch this video and the rest of the course contents.
0:00
A few years ago, I was assigned to a new, exciting and challenging project—
0:04
build a fully featured RESTful service for my company.
0:08
So, I first researched the REST principles
0:11
and their concrete implementations.
0:13
then, I went on to pick a very db backend for my service.
0:17
Right from the beginning, the plan was that soon enough,
0:20
more REST services will go online to complement the first one,
0:24
and since I didn't want to reinvent the wheel every single time,
0:27
I thought it would be smart to build something
0:30
that would be easily redeployable.
0:32
Ideally, I would simple launch a new instance with my package
0:35
which would, of course, provide all the needed features from the get go.
0:39
Then, plug a new data set, set up appropriate validation,
0:43
authentication and authorization rules, and bam,
0:46
a new REST API will be online,
0:48
ready to be consumed by our hungry clients.
0:51
If I could provide most of the features with a single, reusable package,
0:55
and if I could make it so that duties like plugging at different source,
0:59
extending, customizing the common feature set,
1:02
well, if all of these would be easy enough,
1:05
then I would be a winner.
1:07
Soon, I realized that such a tool would end up
1:11
being more a framework than a simple package.
1:13
And, more excitingly, it could be useful to a lot of people out there.
1:18
The result of that work
1:20
was presented at the EuroPython conference back in 2012.
1:24
My talk there ended up being more of a workshop
1:28
on how to use Flask and Mongo to build REST services.
1:32
But, what I was really looking for
1:35
was some kind of validation for my project and idea.
1:39
That is when basically Eve as an open source framework was born.
1:45
So here it is, if you have data store somewhere
1:48
and you need to expose it through some kind of RESTful services,
1:51
then Eve is the tool that allows you to do so.
1:54
And because it is built on top of Flask,
1:56
it is very easy to use, as you can see in this snippet here,
2:01
and also it's easily customizable and extendable.