Git Product home page Git Product logo

spotify-player-vue's Introduction

Notable points:

  • This project was time-boxed, so many things are missing
  • Uses yarn as a package manager
  • This project setup is based on the Vite template for Vue 3 with Sass and Typescript
  • ESLint, Prettier, Husky and Commitlint are configured
  • Deployed to Vercel
  • Only Vue as a production dependency
  • SSR friendly wrappers for window
  • Was tested on Node LTS
  • Storybook would be an overkill here, IMO

Pitfalls of the setup:

  • Unit-testing is a very shallow at this moment because at the time of writing I wasn't able to do a proper setup. I've added tests for the simplest component that doesn't use any aliases or import.meta stuff because all others are breaking or not targets for the tests. The setup that would work with aliases, ES modules and, more importantly Vite was not achieved in the time frame, so I dropped it. Every time I try to fix these issues one of them kept breaking. This error in particular is impossible to fix without major hacks and ugly workaround, EVEN with mocking of the modules:
The 'import.meta' meta-property is only allowed when the '--module' option is 'es2020', 'esnext', or 'system'.
  • E2E testing is not here
  • Has some architecture, but nothing layered/onion-like. For the purposes of this demo it should be enough, I'd also argue that further division into layers for this simple app is probably over-engineering

This setup will most likely evolve after issues with ESM, Vite and Aliases. Different test runner would be great, but for now @web-test/runner is not working with Vite+Vue

spotify-player-vue's People

Contributors

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