Giter VIP home page Giter VIP logo

fullstacktest's Introduction

svgviewer-output

Ello Engineering Challenge

๐Ÿ‘‹ Hello, We are really excited about you potentially joining the team, so we designed this take home exercise to give you a taste of the challenges you may encounter in the role, and better understand what it would be like to work closely together.

Thanks for taking the time, and we hope to talk with you soon!

About Ello

Ello is a forward-thinking educational technology company dedicated to revolutionizing the way children learn to read. Our mission is to empower young readers with the tools they need to become proficient and passionate readers. We believe that fostering a love for reading is essential for a child's academic and personal growth.

Note: Please don't fork this repository or create a pull request against it. Other applicants may take inspiration from it. You should create another repository for the challenge. Once the coding challenge is completed, email your solution back to our team at [email protected].

Challenge

As part of our goal to have Ello impact as many children as we can, we offer an Ello web viewer product. https://books.ello.com

We give this to certain schools for free to allow teachers to share our books with children. You are building part of the teacher-facing UI for this product, namely the book assignment view, where teachers can assign books to students.

The view should have the following features:-

  1. A search bar that allows users to search for books by title.
  2. A list of search results that displays the book title, author, and a button to add the book to the students reading list.
  3. A reading list that displays all the books that the teacher has added.
  4. A button to remove a book from the reading list.

You can build this view without the concept of a "student" and just have a single reading list for the teacher.

Requirements

  • Use React as the frontend framework.
  • Showcase the use of React hooks.
  • Use material-ui as the component library.
  • Write your code in the src/frontend directory.
  • Create components as you feel is best suited for your solution
Screenshot 2024-05-15 at 19 10 51

Data

To get access to data that you will use for this challenge you can switch into the src/backend folder and run

npm install

Then run the following command to start the server

npm start

This start a Graphql server at the url http://localhost:4000/, the server has a single query books that returns a list of books.

query Books {
  books {
    author
    coverPhotoURL
    readingLevel
    title
  }
}

You can use this query to get the list of books to display in your frontend. You may need to adjust the coverPhotoURL to be a valid URL. The photos are in the src/frontend/assets directory.

Styling Guidelines

  • Use the "Mulish" Google font
  • You can use the following colors (You don't have to use all but you can pick and choose from here)
Screenshot 2024-05-14 at 17 36 40

You will be evaluated on

  • Code quality and organization.
  • User experience and design.
  • Beautiful and responsive UI.

fullstacktest's People

Contributors

jamesmwangi55 avatar muokapwambua avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.