Coder Social home page Coder Social logo

elisa-coding-assignment's Introduction

This is a coding assignment for Elisa. The deployed version can be found here.

Getting Started

Requirements

  • Yarn 1
  • NodeJS 16.14 or later

Install the dependencies

yarn

Start the application

yarn dev

The application will open on http://localhost:3000.

Start Storybook

yarn storybook

This will open Storybook automatically on http://localhost:6006

Tools used in this project

File Structure

This project follows the NextJS 13 recommended structure. Inside the app directory, you will find the following:

_components Components that aren't specific to any page, and can be re-used anywhere in the application.

_config For static configuration such as the navbar content.

_types Shared type declarations.

_utils Useful reusable functions such as fetch or date formatting.

(routes) The application's pages.

Thoughts about improvements

This project was done within a limited time frame, so here are a few things that could be improved:

  • Testing. Most components are documented in Storybook, but more interaction testing is needed to make sure that the application is working as it should. One example of interaction test can be found here

  • Accessibility. There should also be accesibility tests such as checking keyboard navigation. This can be done with Storybook interactions as well. More work also needs to be done to make this accessible for screen readers, for example by adding more aria-labels.

  • Error handling. At the moment if the API returns an error, the application will only show NextJS's default error page. It would be better to have custom 500 and 404 error pages, and to catch potential errors properly. This could be done more easily by using SWR.

elisa-coding-assignment's People

Contributors

carole-arbogast 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.