|
2 | 2 | A Simple Blog App using Jetpack Compose, Flow, Navigation Compose, Room and Firebase |
3 | 3 |
|
4 | 4 | ## Instructions |
| 5 | + |
| 6 | +# Auth |
| 7 | + |
5 | 8 | 1. Download your Firebase configuration file (Enabling authentication and Cloud Firestore) |
6 | 9 | 2. Create or register your application in the Facebook developer console to enable authentication with Facebook and add the codes of: |
7 | 10 |
|
8 | 11 | * facebook_application_id |
9 | 12 | * facebook_login_protocol_scheme |
10 | 13 | * facebook_client_token |
11 | 14 |
|
12 | | -3. Enable Cloud Vision API in your Google Cloud Platform |
13 | | -4. Deploy this cloud functions [BlogComposeFunctions](https://github.com/Hcnc100/BlogComposeFunctions) |
| 15 | +# Notification |
| 16 | +If your enable notification to user for comment or like, see <a href="https://github.com/Hcnc100/BlogComposeFunctions">BlogComposeFunctions</a>, |
| 17 | +if not then only see current notifications force refresh (with swipe refresh) |
14 | 18 |
|
15 | | -### Note 1 |
16 | | -To upload the images, a moderation mechanism was chosen using cloud functions, if the profile image is detected as adult content, it will be marked as invalid and will not be established as a profile image, in the case of uploading a post with the image will be uploaded, but if it is detected that it is adult content it will be censored, just as in this case the content of the post is moderated. Note that no optimal mechanism was found to moderate usernames, so usernames are not validated. |
17 | 19 |
|
18 | | -### Note 2 |
19 | | -Notifications use cloud Functions |
20 | | -[BlogComposeFunctions](https://github.com/Hcnc100/BlogComposeFunctions) |
| 20 | +### Bug |
| 21 | +Has a bug when concatenate my post in profile screen for use a LazyVerticalGrid, wait for them to solve it |
21 | 22 |
|
22 | 23 | ## Screenshots |
23 | 24 | ### Auth |
24 | 25 | <p> |
25 | | - <img src="https://i.imgur.com/oI9IObR.png" alt="auth" width="200"/> |
26 | | - <img src="https://i.imgur.com/oza8oUO.png" alt="registry" width="200"/> |
| 26 | + <img src="https://i.imgur.com/7JI3I83.png" alt="auth" width="200"/> |
| 27 | + <img src="https://i.imgur.com/7mADeoV.png" alt="registry" width="200"/> |
27 | 28 | </p> |
28 | 29 |
|
29 | 30 | ### Empty home |
30 | 31 |
|
31 | 32 | <p> |
32 | | - <img src="https://i.imgur.com/q2PgiuQ.png" alt="empty post" width="200"/> |
33 | | - <img src="https://i.imgur.com/A9EV78Z.png" alt="empty notify" width="200"/> |
34 | | - <img src="https://i.imgur.com/cE2btGx.png" alt="empty profile" width="200"/> |
| 33 | + <img src="https://i.imgur.com/siFfaTA.png" alt="empty post" width="200"/> |
| 34 | + <img src="https://i.imgur.com/xPfQzQ9.png" alt="empty notify" width="200"/> |
| 35 | + <img src="https://i.imgur.com/cqCVNI6.png" alt="empty profile" width="200"/> |
35 | 36 | </p> |
36 | 37 |
|
37 | 38 | ### Create and details post |
38 | 39 |
|
39 | 40 | <p> |
40 | | - <img src="https://i.imgur.com/DOY6EBI.png" alt="create post" width="200"/> |
41 | | - <img src="https://i.imgur.com/1OwN5p6.png" alt="example post" width="200"/> |
42 | | - <img src="https://i.imgur.com/e4vytt6.png" alt="post no empty" width="200"/> |
43 | | - <img src="https://i.imgur.com/MxMngxx.png" alt="details post" width="200"/> |
| 41 | + <img src="https://i.imgur.com/y3GvDBa.png" alt="create post" width="200"/> |
| 42 | + <img src="https://i.imgur.com/zyR4gED.png" alt="example post" width="200"/> |
| 43 | + <img src="https://i.imgur.com/ry1kTPl.png" alt="post no empty" width="200"/> |
| 44 | + <img src="https://i.imgur.com/xmgQ57Y.png" alt="details post" width="200"/> |
44 | 45 | </p> |
45 | 46 |
|
46 | 47 | ### Notifications |
47 | 48 | <p> |
48 | | - <img src="https://i.imgur.com/8pxdMTn.png" alt="notifications" width="200"/> |
49 | | - <img src="https://i.imgur.com/oAfYX3h.png" alt="notify 2" width="200"/> |
| 49 | + <img src="https://i.imgur.com/QOWS8xb.png" width="200"/> |
| 50 | + <img src="https://i.imgur.com/Z0SQSae.png" alt="notify 2" width="200"/> |
| 51 | +</p> |
| 52 | + |
| 53 | +### Profile |
| 54 | +<p> |
| 55 | + <img src="https://i.imgur.com/17hiVBP.png" width="200"/> |
| 56 | +</p> |
| 57 | + |
| 58 | + |
| 59 | +# Firebase |
| 60 | + |
| 61 | +## Rules Cloud Firestore |
| 62 | + |
| 63 | +<p> |
| 64 | + <img src="https://i.imgur.com/LUj84qZ.png" width="800"/> |
50 | 65 | </p> |
| 66 | + |
| 67 | + |
| 68 | +## Rules Storage |
| 69 | + |
| 70 | +<p> |
| 71 | + <img src="https://i.imgur.com/PFXD2EP.png" width="800"/> |
| 72 | +</p> |
| 73 | + |
| 74 | + |
0 commit comments