Giter VIP home page Giter VIP logo

Comments (13)

nanot1m avatar nanot1m commented on May 17, 2024 2

Jest is already installed in the project (via react-scripts package)

from excalidraw.

AndreBastos23 avatar AndreBastos23 commented on May 17, 2024 1

IMO we should migrate to functional react, i dont see any benefit is us having this in classes. Maybe @vjeux could clarify if we have any technical blocker to migrate this to hooks.
I also think we should add eslint, it would help us alot when this project grows.
(In case we decide to add eslint) - We could also add a pre-commit hook using husky to lint and prettify the code before commiting.

from excalidraw.

dwelle avatar dwelle commented on May 17, 2024 1

@giovannigiordano you were right, so far it seems we could make it work. #63

from excalidraw.

dwelle avatar dwelle commented on May 17, 2024 1

What's the latest on npm vs yarn? I thought we started with yarn.

So, have we settled on npm, and should we install everything via npm so that we keep package-lock up to date?

(too bad npm takes 10x to install anything)

from excalidraw.

vjeux avatar vjeux commented on May 17, 2024

I started with hooks but couldn’t figure out how to read up to date variables when using addEventListener for window mousemove. If you can make it work that’d be awesome :)

457800c

from excalidraw.

vjeux avatar vjeux commented on May 17, 2024

I’d be happy with eslint, prettier, typescript and jest

from excalidraw.

giovannigiordano avatar giovannigiordano commented on May 17, 2024
  1. For the hooks part, we could use then when we will split the application in more components, without forcing to use them.
  2. Jest is ok. Maybe we can do some integration testing with Cypress to ensure everything is ok with interactivity?

from excalidraw.

dwelle avatar dwelle commented on May 17, 2024

ad 2: Cypress won't help here until they implement non-synthetic, native events (at least as far as interacting with the canvas is concerned). We could go with Puppeteer & CDP, or something like Selenium & WebDriver.

from excalidraw.

giovannigiordano avatar giovannigiordano commented on May 17, 2024

@dwelle with cypress you can interact with canvas using mouse events and maybe compare the result as a screenshot.

from excalidraw.

dwelle avatar dwelle commented on May 17, 2024

@giovannigiordano I thought we'd need to fire proper events. I'll investigate if we can emulate the tests in Cypress by triggering mouse events programmatically.

from excalidraw.

giovannigiordano avatar giovannigiordano commented on May 17, 2024

@dwelle I introduced yarn and then npm to use it in the deploy action, to avoid the usage of a custom action which integrates yarn (the nodejs action has npm).
The project is small, we don't have too many dependencies, so let's focus on other features.

from excalidraw.

GasimGasimzada avatar GasimGasimzada commented on May 17, 2024

Would you guys be interested in splitting the code into multiple files? I believe that it will improve dev workflow as it is easier to navigate through smaller files instead one large file.

from excalidraw.

vjeux avatar vjeux commented on May 17, 2024

I feel like we've done the original scope of this issue.

from excalidraw.

Related Issues (20)

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.