/shiptivitas-1

Task 1 for the Learn how to work at a Y Combinator startup on InsideSherpa

Primary LanguageJavaScript



Task Overview | Installation | Link to Module 1 | Link to Y Combinator Program

Introduction

College Students: Learn how to work at a Y Combinator startup
Train online for the skills Y Combinator startups are looking for. One of the official ways to get recruited into a Y Combinator startup.

Module 1 Task Overview

Working Fullstack 1: Frontend updates based on feedback. Help update the frontend of a new productivity tool for shipping.

Aim: Your task is to take the base shipping productivity tool and add in the ability for the new feature, the kanban board, to move shipping requests, to two new lane statuses (in-progress and complete). Don't worry about any backend updates for now.

Acceptance Criteria

  • In the "Shipping Requests" tab of the application, all tasks should show in the backlog swimlane.
  • There should be 3 swimlanes.
  • When a user drags a card up, down or into another swimlane, it reorders the card and stays there. (frontend only)
  • When a card changes swimlane, it should change color

Installation

  1. Clone the Shiptivity frontend repository
  2. Make the necessary changes to the code (frontend only) and make use of the Dragula tool

Available Scripts

In the project directory, you can run:

npm start

this runs the app in the development mode.
Open http://localhost:3000 to view it in the browser.

The page will reload if you make edits. You will also see any lint errors in the console.

We have loaded some clients data in Board.js. Each client is an object of interface Client { id: number, name: string, description: string, status: 'backlog' | 'in-progress' | 'complete, }

The Dragula library has been installed, you can use it by importing it on top of each file that you need

import Dragula from 'dragula';

then use it by calling Dragula directly.

Visit Dragula repository on github for more information https://github.com/bevacqua/dragula

How I achieved my goal:

  1. Start the Project:

    • Install the required npm packages for the project.
    • Use the command npm start to start the project. It should open in your web browser.
  2. Troubleshoot npm Start:

    • If npm start doesn't work, troubleshoot by:
      • Opening the package.json file in your project folder.
      • Look for "start": "react-scripts start",.
      • Update it to "start": "react-scripts --openssl-legacy-provider start",.
  3. Install dragula Package:

    • Use the command npm install dragula to install the dragula package.
  4. Fix Drag and Drop:

    • After installing dragula, implement it in your project following the documentation.
  5. Move Tasks to Backlog:

    • Set tasks to automatically move to the backlog:
      • Find the relevant code section and modify it.
  6. Attempt Color Change on Drop:

    • Try fixing the color change when tasks are dropped:
      • Locate the code section responsible and follow debugging steps if needed.

Remember, if you encounter any difficulties during these steps, don't hesitate to refer to documentation or ask for help in online forums. Learning and improving comes with practice, so keep exploring and experimenting.