Tiny web project with big music ambition: dusting old prog albums, some known as prog gems, to make them shine beside classic albums.
Browse albums, filter them by music criteria, discover similar albums and find out who designed that cover.
This is a Vue.js v2 project bootstrapped with Vite.
- Clone this repository
- Install the dependencies:
npm install
- Follow the Project setup instructions above
- Run the development server (compiles and hot-reloads):
npm run dev
- See the local live server:
http://127.0.0.1:5173/
- Run the storybook server (compiles and hot-reloads):
npm run storybook
- See the local live storybook server:
http://localhost:6006/
- Prettify files:
npm run prettify
- Lint files:
npm run lint
- Run unit and component tests:
npm run test:unit
- Build for production:
npm run build
The workflow is currently very basic. There are three main branches: /master
, /dev
and /gh-pages
. Code updates are done in /dev
, pull requests from /dev
to /master
and deployment from /master
to /gh-pages
on each /master
update.
This project is heavily influenced by SMACSS and BEM, and uses Vue option API. It relies on ESLint for linting, Prettier coupled with EditorConfig for formatting, Conventional Commits for commit structuration ; all of which triggered on pre-commit hooks with Husky and lint-staged.
- Fix wrapper.emitted() empty result
- Fix tsc broken config
This project would benefit from several implementations, which are planned for the future, such as:
- Design system consolidation
- Accessibility (aria, contrast)
- Branch CLI and protections
- Automated versioning, releases, tags and changelogs
- Unit, UI and E2E tests
- External DB and DAO
This project is far from being done even though the 1000 albums milestone has been reached. It still needs:
- The remaining Prog-related albums (~9000 albums, including albums that are impossible to listen to entirely on the web)
- Some more criteria
- A Discogs/Youtube/Spotify/Deezer search API for album titles and artists
- Other features that I haven't thought of yet