Self-paced

Explore our extensive collection of courses designed to help you master various subjects and skills. Whether you're a beginner or an advanced learner, there's something here for everyone.

Bootcamp

Learn live

Join us for our free workshops, webinars, and other events to learn more about our programs and get started on your journey to becoming a developer.

Upcoming live events

Learning library

For all the self-taught geeks out there, here is our content library with most of the learning materials we have produced throughout the years.

It makes sense to start learning by reading and watching videos about fundamentals and how things work.

Search from all Lessons


LoginGet Started

Register to 4Geeks

← Back to Projects

Family Tree Static API with Flask

Difficulty

  • easy

Average duration

8 hrs

Technologies

  • Data Structures

  • Serialization

  • Python

  • json

  • Flask

  • REST

  • APIs

Difficulty

  • easy

Average duration

8 hrs

Technologies

Weekly Coding Challenge

Every week, we pick a real-life project to build your portfolio and get ready for a job. All projects are built with ChatGPT as co-pilot!

Start the Challenge
Podcast: Code Sets You Free

A tech-culture podcast where you learn to fight the enemies that blocks your way to become a successful professional in tech.

Listen the podcast

Based on the technologies/strategies we've learn build a static API that handles a family tree. You're free to use your own family information, you can use fake data too.

🌱 How to start this project

Do not clone this repository.

The first step to start coding is cloning the python boilerplate or nodejs boilerplate on your local computer or gitpod.

a) If using Gitpod (recomended) you can clone the boilerplate by:

b) If working locally type the following command from your command line:

  • Python: git clone https://github.com/4GeeksAcademy/flask-rest-hello.
  • Nodejs: git clone https://github.com/4GeeksAcademy/expressjs-rest-hello.

πŸ’‘ Important: Remember to create a new repository, update the remote (git remote set-url origin <your new url>), and upload the code to your new repository using add, commit and push.

πŸ“ Instructions

Your API must have, at least, 7 members spread throughout 3 generations:

1grandparent -> parent -> current generation

The family tree must be represented as an object tree structure, i.e.: each person (node in the tree) must have: id, name, last-name, age, and a reference (id) to its parents and children (if any).

  • GET /all The API must expose an endpoint that returns the full list of family members ordered by oldest to younger.
  • GET /member/<int:id> The API must expose an endpoint that returns a specific member of the family tree by their id (which should be unique) and the information about its children and parents.

Technologies

The API must be developed using Flask or Expressjs and each endpoint must return a valid JSON file.

πŸ’‘ Hints

You may want to draw (pen and paper) the tree structure to have a "visual" structure in mind. Use the lines to display the references between parents and children.

The references should be the members' id number.

Create your data structures before you create the endpoints, use global variables.

Signup and get access to similar projects

We will use it to give you access to your account.
Already have an account? Login here.

Difficulty

  • easy

Average duration

8 hrs

Technologies

Difficulty

  • easy

Average duration

8 hrs

Technologies

Difficulty

  • easy

Average duration

8 hrs

Technologies

Difficulty

  • easy

Average duration

8 hrs

Technologies

Signup and get access to similar projects

We will use it to give you access to your account.
Already have an account? Login here.

Difficulty

  • easy

Average duration

8 hrs

Technologies

Difficulty

  • easy

Average duration

8 hrs

Technologies

Weekly Coding Challenge

Every week, we pick a real-life project to build your portfolio and get ready for a job. All projects are built with ChatGPT as co-pilot!

Start the Challenge
Podcast: Code Sets You Free

A tech-culture podcast where you learn to fight the enemies that blocks your way to become a successful professional in tech.

Listen the podcast