README document for the Alcoholic app
This app is a cocktail communication application. You can search for the cocktails you want to cast, save them as favorites, and share the information with the community.
The platforms used to build the application include:
- Android Studio is the main platform for application development.
- Firebase is Google's web server framework that makes DB easy to use in JSON format from Android applications.
- TheCocktailDB.com is a paid API that provides 653 cocktail databases and search queries. Various data are obtained from the API, parsed, and used as desired data.
- Papago API is translates the data of 'The Cocktail DB' in English into another language. Used for user convenience.
This application was created to convey the beauty of cocktails to many people because our alcholic team members like cocktails.
In fact, there are many cocktail manufacturing applications. You can download many applications just by searching the App Store with cocktails. These applications are more powerful than you think. There's a lot of data, and there's all the features that we normally support. However, community functionality does not exist. So we wanted to differentiate ourselves by adding community functions.
The goals for this application are:
- Provide users with a variety of cocktail recipes. (It's more than just searching on Google)
- Make it possible for users to save and view only what they want from numerous cocktail recipes as a favorite feature.
- Create an account through login to the user and make the community available.
- If you have your own cocktail recipe, use it as a custom recipe and upload it to the community, and let others download it and save it in their favorites.
This App install can APK file. If you want to install it, click the link to download the APK.
- Log-in,Sign up
The first time you run the application, the login screen appears. If you don't have user information in the database, you need to add users through membership. The email, password, and nickname entered through this membership will be stored in the database. You can sign up by entering your nickname and email password, and if the email format does not fit, an extension will occur.
If the login function has an incorrect email or password, or if the email is not formatted, an extension will occur. If you have successfully logged in, you can go to the main screen and see your information displayed briefly on the menu and menu items.
- Menu fragments
There are two searches, and a cocktail keyword-based search searches search all cocktails with the string entered in the search bar as a substring.
And this is your favorite menu. If you find a recipe that you want to make later in your cocktail search or encyclopedia, you can use it as a key value Save to Favorite data child. And the logout button functions to go to the login screen.
- Cocktail Search
- Menu fragment - search ingredients
- Community pages
Community, one of the main functions, lists and shows the author, content, and writing time as a thumbnail. The list also used the Recycler view, and when you click the list, the post is called. At this time, the position of the list clicked with the adapter and the unique key searched with the position are sent to the int using the bundle. Posts discovered with unique keys will display what the author has written and comments. You can type any text you want in the comment box, and the comment is saved in the current post, that is, the child of the post. If the comments and posts are the same as the unique keys of the currently logged-in user, the Delete button is activated. When deleted, it disappears from the data.
If someone else uploads a post, the datachange listener in the database detects the change and refreshes the view in the post list program so that the data is displayed in real time. When a comment is uploaded, the listener refreshes the comment recycler view inside the poster. If there is no content when you create a post, an extension occurs.
We introduce a framework other than Android Studios in developing applications.
Building and processing cocktail information databases and implementing search algorithms using them is a challenge. We found paid API that supports various search functions, including a high-quality database, and decided to use it. In addition to the search function, there are necessary functions within the application, so we made a list with cocktail names and ingredients separately.(635 cocktail list)
Papago was used to show recipes from TheCocktailDB.com in Korean. It is expected that users will be able to drink more comfortably and without mistakes.
- Membership registration: Save email and password entered by user in DB
- Login: If the information entered by the user is compared with the DB, login
- Bulletin board [glist]: Get the child of Post in DB as a datasnapshot, save it in Post class, and list it using the method in class
- Bulletin board [Writing]: Create and save unique keys from the child of the post
- Bulletin board [Read text]: When you click the text list, the key value of the text is transmitted by activity as a fragment using bundle, and the key is searched and displayed
- Bulletin board [Comments]: When reading a post, take a snapshot of the child of the comment generated by the child of the post and list it on the bottom of the post
-
Currently, It improvement is that when you create and upload your own custom recipe to share with the community, someone wants to add it as a favorite and upload it to the DB.
-
Currently, I am signing up with nicknames, e-mails, and passwords, but I would like to use the Google login function because it is very insecure. However, Google login requires developer registration, so if the improvement is resolved, it is expected to be added before release.
This project exists thanks to all the people who contribute.
MIT © Richard Littauer