Skip to content

ronaldocoding/sommelier

Repository files navigation

Sommelier 🍷

Fork Watchers Stargazers Repository size GitHub last commit License Issues Pull Requests GitHub contributors Quality Gate Status Bugs Vulnerabilities Duplicated lines density Reliability rating Coverage Lines of Code Code smells Maintainability Rating Security Rating Security Rating

Description πŸ“š

Sommelier is a dish review app that provides users with the following functionalities:

  • User Account Management: Users can create accounts and manage their profiles within the app.
  • Restaurant and Dish Addition: Users have the ability to add restaurants and their corresponding dishes to the app's database.
  • Dish Reviews: Users can review and rate dishes from the restaurants listed in the app.

The application is developed natively for Android using the Kotlin programming language. It leverages Firebase as the backend-as-a-service (BAAS) to handle data storage and other backend functionalities, making it a seamless experience for users.

Overall, Sommelier aims to be a user-friendly platform where individuals can store their experiences with various dishes from different restaurants.

Android stack πŸ€–

Firebase stack πŸ”₯

Desin 🎨

Check out the design in Figma:

Sommelier Showcase

Documentation πŸ—‚οΈ

Use Cases

Sommelier - Casos de uso(1)

Entity-Relationship Model

Sommelier - MER

System Context Diagram

Sommelier - System Context D (1)

Container Diagram

Sommelier - Container Diagram(1)

Development status πŸ“ˆ

The project is still in progress, you can find below the percentages completed for each section of issues:

  1. User CRUD and authentication: 100%

    • Data layer: Static Badge
    • Domain layer: Static Badge
    • Presentation layer: Static Badge
  2. Restaurant CRUD: 0%

    • Data layer: Static Badge
    • Domain layer: Static Badge
    • Presentation layer: Static Badge
  3. Dish CRUD: 0%

    • Data layer: Static Badge
    • Domain layer: Static Badge
    • Presentation layer: Static Badge
  4. Review CRUD: 0%

    • Data layer: Static Badge
    • Domain layer: Static Badge
    • Presentation layer: Static Badge

How to run πŸš€

Prerequisites πŸ“”

To run the Sommelier app, you need to use Android Studio. You can clone this repository or import the project from Android Studio following the steps here.

Running πŸ‘¨β€πŸ’»

# Clone this repo
$ git clone https://github.com/ronaldocoding/sommelier

# Access project folder in terminal/cmd
$ cd sommelier

# Build the gradle wrapper
$ gradle wrapper --gradle-version <insert version>

# Give root acess to the gradle wrapper (gradlew)
$ chmod +x ./gradlew

# Build the app
$ ./gradlew build

# Start the emulator on which you will run the app
$ emulator -avd avd_name

# Run the app in the started emulator
$ adb install app/build/outputs/apk/debug/app-debug.apk

To use the Android Emulator, you must create an Android Virtual Device (AVD) using Android Studio.

How to contribute 🧐

There are 4 ways to contribute to this project:

  1. Solving an issue
  2. Improving documentation
  3. Opening an issue
  4. Fixing a bug not mapped yet

Rules to follow while contributing:

  1. Adhere to the Pull Request Template when opening pull requests.
  2. Add unit tests when necessary to ensure code quality and reliability.
  3. Follow the Clean Android Architecture and MVVM design pattern during the development of your Pull Request.

Step-by-step to contribute:

  1. Fork the repository.
  2. Clone your forked repository to your local machine.
  3. Make your edits or create new programs following the project's guidelines and requirements.
  4. Save your changes and make a commit with a descriptive message: git commit -m "[feature] My new feature".
  5. Push your changes to your remote repository using a branch: git push origin feature/my-feature.
  6. Submit your changes by creating a Pull Request, which will be reviewed and approved by the project maintainers.

In case you have questions check this guide about how to contribute to GitHub.

License πŸ“

This project is under the MIT License.

Contributors 🀝

Here are our project contributors:


Ronaldo Costa

πŸ‘¨β€πŸŽ“πŸ“š

Author πŸ€“


Ronaldo Costa

Made by Ronaldo Costa πŸ˜ŽπŸ––

Contact me:

About

Sommelier App - a dish review app

Resources

License

Stars

Watchers

Forks

Languages