GithubHelp home page GithubHelp logo

cm-full-stack-test's Introduction

Welcome to Creative Morph!

Hi, in this test you will be creating a chat app! This chat will have:

  1. Frontend in Typescript React.
  2. Backend in Nodejs

Frontend (50 points)

The frontend test will be in Typescript React. There are 2 main routes home and chat.

  1. /home: On this page you will write the documentation for this app.
  2. /chat: This is the page where you will make the actual chat app.

Setup

Please fork the repository

Use the command below to install all the dependencies for the frontend.

npm install

You can run the development server for the front end by running

npm run start

And run tests by running

npm run test

And build by running

npm run build:dev

Task#1: Fix the router (10 points)

The /chat route seems to be broken, even when you change the route to localhost:3000/chat it will stay at the /home directory please fix this.

Task#2 Create a chat (40 points)

In section this you must create a chat application. You have to:

  1. Create a store that will house all your chats.
  2. Be able to send/receive messages in real time.
  3. Write some brief documentation about how your app works on the /home page and include a link to the chat as well.

you will be graded on:

  1. The functionality of the overall app.
  2. The quality of your code.
  3. How you used typescript's strict syntax to avoid type conflicts.
  4. How your app handles errors (like not being connected to the internet).

Bonus Task

If you can

  1. Write some tests for your app using whatever testing framework you see fit.
  2. Deploy your app to github pages.

Both of these steps are optional however you do gain an upper hand if you do them.

Backend (50 points)

You must use nodejs to implement your backend, with that said you are free to use whatever libraries, technologies you see fit to accomplish the task above. just put your code in the \server folder of the repository you forked above

Submission

To submit you code just commit your code and create a pull request against the master branch of the repository you forked.

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.