Code Monkey home page Code Monkey logo

urbansky's Introduction

Urban Sky Inventory Management System

An inventory management system for Urban Sky, built using React, Node and Postgres.

Usage

The application runs in a Docker container.

Make sure you have the Docker client installed first.

To run: docker compose up --build

The backend API includes a suite of tests for all endpoints.

To run tests: cd urbansky-back npx vitest

Features/Flexes

  • Form validation using yup and react-hook-form
  • Endpoint testing using vitest and supertest

Future

This application has plenty of room for improvement. For me, the top three listed are the highest priorities (the rest is unordered).

  • ItemList.tsx is a monsterous file, and so badly needs to have it's various pieces turned into components.
  • Editting an item should only require a single field for submission.
  • Implementing React Query, or Redux, for centralized state management.
  • Many of the form behaviors could be improved to smooth out the experience.
  • Loading state after form submission should be on a small timeout to prevent the flash that happens when the request goes through too quickly.
  • Forms could be modularized to DRY the code.
  • Forms should close on submit
  • Layout could use some TLC, the gap in the middle for example, is bad.
  • Delete confirmation should be a modal that takes focus, dims the background etc.
  • CORS should allow specifically the frontend address, not everybody.
  • A get item by serial number method would likely be useful, especially with future search functionality in mind.
  • Some minor flex nudging happens when you expand an items details, that should be corrected.
  • docker-compose.yml is likely suboptimal in it's execution, could use improvements.
  • Form validation could be expanded and refined.
  • I'd probably rethink the design altogether to account for scalability. It's pretty limiting at the moment and would be cumbersome with dramatically larger inventories.

urbansky's People

Contributors

btdunn 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.