Code Monkey home page Code Monkey logo

abusix-tech-test's Introduction

Abusix Frontend Coding Challenge

Hi, thanks for taking the time to do our coding challenge. If you have any questions about the task, please don´t hesitate to reach out to us.

Your task is to implement a small React app that displays network abuse events coming from an API. The implementation doesn´t have to be perfect, so it´s best if don´t spend more than 2-4 hours on it. We mostly want to see what your typical working style looks like, so just focus on what you think is most important.

Setup

Start the sample API:

cd api
npm i
npm start

Now the API is being served on port 5000.

API documentation

The API works with the json-server npm package.

It provides a GET /api/events endpoint that offers filtering, sorting and pagination via query params.

See the package´s documentation for more information about available query params:

Your Task

Implement a React application in the client directory. You can use any libraries and frameworks you like, the only constraint is that you should not modify the api directory.

Hint:

  • for AbuseHQ, we are using Evergreen UI with TypeScript, so feel free to use those

Please use the already initialized Git repo and make sure to include the final .git directory in your submission.

The following requirements should be met:

As a user,

  • I can access all existing abuse events, with at least the following fields:
    • id -> "ID"
    • createdAt -> "Timestamp"
    • client.ip -> "Client IP"
    • type -> "Event Type"
    • reporter.email -> "Reporter Email"
  • I can sort the abuse events by all fields, except "ID"
    • by default, the events should be ordered by "Timestamp"
  • I can filter for abuse events by
    • "Event Type"
    • "Reporter Email"
    • "Client IP"

abusix-tech-test's People

Watchers

James Cloos avatar Francisca Calabria Rubio 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.