Skip to content

dan-chui/flow

Repository files navigation

Flow

💻 Project

Welcome to Flow!

Flow is a mobile-responsive Music player app that has many useful features. Users can efficiently upload and edit songs, comment on items, and much more. Data is managed and organised by Firebase, which also provides login and authentication.

Please visit (in a new tab): https://flow-dan-chui.vercel.app/

🚀 Technologies

  • Vue.js
  • Vue Router
  • Firebase
  • Pinia
  • PWA
  • Tailwind CSS
  • Vite
  • Testing (Vitest | Cypress)
  • Vercel

💫 Features

  • Modern Framework: Utilizing Vue.js and Vue Router to maximise efficiency and reusability.

  • Database: Data management and storage are delivered by Firebase.

  • Authentication: Login, editing data and user management requires authentication and authorization. Firebase rule policies controls access.

  • Pinia: State management library that simplifies fetching, caching, and updating data.

  • Filtering/Sorting: Filtering and sorting options via Pinia efficiently navigates through data.

  • PWA: Progressive Web App (PWA) allows Users to utilize the app both online and offline.

  • UI/UX: Clean User and mobile-friendly interface stylized by Tailwind CSS.

  • Internationalization: Vue-i18 assists with translation between the English and Japanese languages.

  • Testing: Automated testing using Vitest & Cypress helps ensure code quality.


Demo

Please visit (in a new tab): https://flow-dan-chui.vercel.app/


🌎 Getting Started

Recommended IDE Setup

VSCode + Volar (and disable Vetur) + TypeScript Vue Plugin (Volar).

Customize configuration

See Vite Configuration Reference.

Project Setup

npm install

Compile and Hot-Reload for Development

npm run dev

Compile and Minify for Production

npm run build

Run Unit Tests with Vitest

npm run test:unit

Run End-to-End Tests with Cypress

npm run test:e2e:dev

This runs the end-to-end tests against the Vite development server. It is much faster than the production build.

But it's still recommended to test the production build with test:e2e before deploying (e.g. in CI environments):

npm run build
npm run test:e2e

Lint with ESLint

npm run lint

About

Flow - Vue.js music player

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published