Git Product home page Git Product logo

vue-projects's Introduction

Vue Projects

4 small Vue projects using Firebase.

# Project Description
01 Project Planner A simple project tracker to understand Vue basics.
02 Dojo Blog A blog to learn the Composition API, using Vue Router and Firestore.
03 Live Chat A real-time chatroom working with Firebase Authentication.
04 Muso Ninjas A music playlist website using Firebase Storage.

1) Project Planner

A simple project tracker to understand Vue basics.

See 01-project-planner folder

Features

  • setting up a project with Vue CLI.
  • using the Options API.
  • adding, updating, completing and deleting projects.
  • creating a filter nav and showing filtered projects.
  • displaying Material Icons.

2) Dojo Blog

A blog to learn the Composition API, using Vue Router and Firestore.

See 02-dojo-blog folder

Features

  • discovering the Composition API and the setup function.
  • using props, refs and computed values.
  • using watch, watchEffect and lifecycle hooks.
  • creating reusable composition functions (composables).
  • fetching data with async/await and making a POST request.
  • creating a loading spinner and a tag cloud.
  • using useRouter and useRoute from Vue Router.
  • connecting to a Firebase project.
  • fetching a collection of posts and single posts.
  • adding and deleting blog posts.
  • using timestamps and ordering posts.
  • understanding real-time listeners in Firestore.

3) Live Chat

A real-time chatroom working with Firebase Authentication.

See 03-live-chat folder

Demo

See Demo deployed on Firebase

(Email: [email protected] - Password: demouser)

Features

  • setting up Firebase Authentication.
  • handling signup and login forms with composables.
  • managing context, errors and emitting events.
  • getting the current user and logging users out.
  • adding route guards.
  • waiting for Firebase Authentication to initialize.
  • adding new messages to Firestore.
  • using a real-time Firestore listener to handle messages.
  • unsubscribing from real-time listeners to avoid unnecessary re-renders.
  • formatting dates in the chat window with date-fns.
  • building and deploying the app with Firebase CLI.
  • adding Firestore security rules to require authentication and locking the API to its domain.

4) Muso Ninjas

A music playlist website using Firebase Storage.

See 04-muso-ninjas folder

Demo

See Demo deployed on Firebase

(Email: [email protected] - Password: demouser)

Features

  • creating a Firebase project and reusing Firebase composables.
  • handling signup and login forms with loading state.
  • showing a different navbar for connected users and adding route guards.
  • adding new playlists.
  • uploading images to Firebase Storage.
  • getting real-time playlist data and listing playlists.
  • displaying playlists details and checking playlist ownership.
  • deleting a playlist and removing images from Firebase Storage.
  • adding songs to playlists and updating playlist details.
  • listing and deleting songs.
  • listing user playlists with Firestore queries.
  • building and deploying the app with Firebase CLI.
  • adding Firebase Storage security rules to require authentication and locking the API to its domain.

Based on Build Web Apps with Vue JS 3 & Firebase by Shaun Pelling - The Net Ninja (2020).

vue-projects's People

Contributors

solygambas avatar

Watchers

 avatar  avatar  avatar

Forkers

lef28

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.