Skip to content

Latest commit

Β 

History

38 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🎡 MariBermusik Mobile Application

A Flutter-based mobile app to learn musical instruments with ease!

Flutter Firebase Dart


πŸ“– Overview

MariBermusik is a mobile application crafted by a team of five as a college final assignment. Designed to help users learn various musical instruments, this app offers an interactive and user-friendly experience. Built with Flutter, it leverages Firebase for secure authentication, efficient database management, and insightful analytics.


✨ Features

1. 🎸 Home Screen with Instrument Carousel

  • A visually engaging carousel showcasing images of musical instruments with smooth animated transitions.
  • Screenshot:
    Home

2. πŸ” User Authentication (Login/Register)

  • Secure login and registration using email and password, featuring a modern gradient background.
  • Profile creation with name and username for a personalized experience.
  • Screenshot:
    Login Register

3. πŸ“š Material Page

  • View, add, edit, and delete learning materials for instruments, presented in beautifully styled cards.
  • Favorite materials with an intuitive heart animation for quick access.
  • Screenshot:
    Material List Material Add Material Edit Material Delete

4. πŸ‘€ Profile Management

  • Displays user details with elegant shadow effects and editable fields.
  • Update your name and sign out with a prominent, user-friendly button.
  • Screenshot:
    Profile Guest Profile User Profile Edit

πŸ—‚οΈ Project Structure

πŸ“¦ MariBermusik
 ┣ πŸ“‚ lib
 ┃ ┣ πŸ“‚ component          # Reusable UI components
 ┃ ┃ ┣ bottom_navbar.dart
 ┃ ┃ ┣ entry_field.dart
 ┃ ┃ ┣ loading.dart
 ┃ ┃ ┣ material_card.dart
 ┃ ┃ ┣ profile_field.dart
 ┃ ┃ β”— top_navbar.dart
 ┃ ┣ πŸ“‚ pages              # Main app screens
 ┃ ┃ ┣ home_screen.dart
 ┃ ┃ ┣ login_register.dart
 ┃ ┃ ┣ material.dart
 ┃ ┃ β”— profile_screen.dart
 ┃ ┣ πŸ“‚ services           # Service logic
 ┃ ┃ ┣ auth.dart
 ┃ ┃ β”— firestore.dart
 ┃ ┣ main.dart             # App entry point
 ┃ ┣ widget_tree.dart      # Manages navigation based on auth state
 ┃ β”— firebase_options.dart # Firebase configuration
 ┣ πŸ“‚ assets
 ┃ β”— πŸ“‚ images             # Image assets
 ┣ πŸ“‚ env                  # Environment config
 ┣ πŸ“œ .gitattributes
 ┣ πŸ“œ .gitignore
 ┣ πŸ“œ metadata
 ┣ πŸ“œ analysis_options.yaml
 ┣ πŸ“œ firebase.json
 ┣ πŸ“œ key_properties
 ┣ πŸ“œ pubspec.yaml         # Dependencies
 ┣ πŸ“œ pubspec.lock
 ┣ πŸ“‚ linux
 ┣ πŸ“‚ macos
 ┣ πŸ“‚ web
 β”— πŸ“‚ windows

πŸ› οΈ Tech Stack

Core Technologies

  • Flutter: Cross-platform framework for a rich UI experience.
  • Dart: The programming language behind Flutter.
  • Firebase:
    • Firebase Authentication: Secure user login and registration.
    • Cloud Firestore: Efficient storage and retrieval of materials and user data.
    • Firebase Analytics: Tracks user interactions for insights.

Dependencies

Package Version Purpose
cloud_firestore ^4.13.6 Firestore database integration
firebase_core ^2.24.2 Firebase core functionality
firebase_auth ^4.16.0 User authentication
firebase_analytics ^10.8.0 Analytics tracking
loading_animation_widget ^1.0.0 Loading animations
timeago ^3.1.0 Human-readable timestamps
card_swiper ^3.0.1 Image carousel functionality
flutter_lints ^2.0.0 Code linting
flutter_launcher_icons ^0.9.2 Custom app icons

πŸš€ Installation

  1. Clone the Repository

    git clone <repository-url>
  2. Install Dependencies

    flutter pub get
  3. Configure Firebase

    • Set up your Firebase project.
    • Add firebase.json and update firebase_options.dart with your Firebase configuration.
  4. Run the App

    flutter run

πŸ‘₯ Team

Developed by a passionate team of five students as part of a college final assignment:

  • Rendy Pratama
  • Usman
  • Indra Wijaya
  • Marsella
  • Chelsea Samsi Wijaya

πŸ“œ License

[Insert license information if applicable]


Made with ❀️ for music lovers!

About

Musical instrument learning themed Mobile App that provides CRUD features in learning materials and user authentication using firebase

Topics

Resources

Stars

2 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages