{"id":19153426,"url":"https://github.com/alexandrecpedro/picpayclone","last_synced_at":"2026-04-30T08:41:08.236Z","repository":{"id":112110211,"uuid":"480423118","full_name":"alexandrecpedro/picpayclone","owner":"alexandrecpedro","description":"Clone of PicPay application, using a robust and testable architecture, from app to servidor side.","archived":false,"fork":false,"pushed_at":"2022-04-11T14:55:11.000Z","size":1331,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-01-03T19:16:46.242Z","etag":null,"topics":["android","android-app","api","dockerfile","java","kotlin","picpay-cloning","postgres","postgresql"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/alexandrecpedro.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-04-11T14:45:43.000Z","updated_at":"2022-04-11T15:08:29.000Z","dependencies_parsed_at":"2023-04-08T21:57:53.951Z","dependency_job_id":null,"html_url":"https://github.com/alexandrecpedro/picpayclone","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexandrecpedro%2Fpicpayclone","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexandrecpedro%2Fpicpayclone/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexandrecpedro%2Fpicpayclone/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexandrecpedro%2Fpicpayclone/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/alexandrecpedro","download_url":"https://codeload.github.com/alexandrecpedro/picpayclone/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240236344,"owners_count":19769581,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["android","android-app","api","dockerfile","java","kotlin","picpay-cloning","postgres","postgresql"],"created_at":"2024-11-09T08:23:04.660Z","updated_at":"2026-04-30T08:41:03.217Z","avatar_url":"https://github.com/alexandrecpedro.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align = \"center\"\u003e\n    \u003ch1\u003e PicPay Clone \u003c/h1\u003e\n\u003c/div\u003e\n\u003cbr\u003e\n\n| | | | |\n|:-------------------------:|:-------------------------:|:-------------------------:|:-------------------------:|\n|\u003cimg width=\"1604\" alt=\"login\" src=\"./Android/assets/picpay-screen1.png\"\u003e | \u003cimg width=\"1604\" alt=\"activities\" src=\"./Android/assets/picpay-screen2.png\"\u003e|\u003cimg width=\"1604\" alt=\"contacts\" src=\"./Android/assets/picpay-screen3.png\"\u003e|\u003cimg width=\"1604\" alt=\"profile\" src=\"./Android/assets/picpay-screen4.png\"\u003e |\n\u003cbr\u003e\n\n\u003cp align=\"center\"\u003e\n \u003ca href=\"#target\"\u003eTarget\u003c/a\u003e •\n \u003ca href=\"#technologies\"\u003eTechnologies\u003c/a\u003e •\n \u003ca href=\"#route\"\u003eRoute\u003c/a\u003e\n\u003c/p\u003e\n\u003cbr\u003e\n\u003cbr\u003e\n\n\u003cdiv id=\"target\"\u003e\n\u003ch2\u003e 💡 Target \u003c/h2\u003e\nClone of PicPay application, using a robust and testable architecture, from app to servidor side. \nFor the Android, using the MVVM structural pattern. \nFor the servidor side, building an API RESTful with Spring Boot structure to simulate PicPay features.\n\u003c/div\u003e\n\u003cbr\u003e\n\n\u003cdiv id=\"technologies\"\u003e\n\u003ch2\u003e 🛠 Technologies \u003c/h2\u003e\nThe following tools were used in building the project:\u003cbr\u003e\u003cbr\u003e\n\n|                  Type                  |                Tools                |                                 References                                  |\n| :------------------------------------: | :---------------------------------: | :-------------------------------------------------------------------------: |\n|       Programming Language (App)       |              KOTLIN                 |              https://kotlinlang.org/                                        | \n|                   IDE                  |          ANDROID STUDIO             |              https://developer.android.com/studio                           |\n|          Injection Framework           |                KOIN                 |              https://insert-koin.io/                                        |\n|                 Testing                |                JUNIT5               |              https://junit.org/junit5/                              |\n|            HTTP API Library            |              RETROFIT2              |              https://square.github.io/retrofit/                             |\n|          HTTP Client Library           |              OkHTTP3                |              https://square.github.io/okhttp/                               |\n|           API RESTful (JSON)           |               SWAGGER2              |              https://swagger.io/                                            |\n|   Programming Language (Server Side)   |                JAVA                 |              https://docs.oracle.com/javase/tutorial/                       |\n|               Spring Boot              |            SPRING BOOT              |              https://start.spring.io/                                       |\n|                 Database               |            POSTGRE SQL              |              https://www.postgresql.org/                                    |\n|          In-memory data store          |                 REDIS               |              https://redis.io/                                    |\n|                 Security               |                 JWT                 |              https://jwt.io/                                          |\n\n\u003cbr\u003e\n\u003cbr\u003e\n\n\u003cdiv align = 'center'\u003e\n  \u003ch3\u003eFrontend\u003c/h3\u003e\n  \u003cimg width =' 100px ' src=\"https://cdn.jsdelivr.net/gh/devicons/devicon/icons/kotlin/kotlin-original.svg\" /\u003e\n  \u003cimg width =' 100px ' src=\"https://cdn.jsdelivr.net/gh/devicons/devicon/icons/androidstudio/androidstudio-original.svg\" /\u003e\n  \u003cimg width =' 100px ' src=\"https://insert-koin.io/img/koin_new_logo.png\" /\u003e\n  \u003cimg height =' 100px ' src=\"https://junit.org/junit5/assets/img/junit5-logo.png\" /\u003e\n  \u003cbr\u003e\n  \u003cimg height=' 100px ' src=\"./Android/assets/Retrofit.jpeg\" /\u003e\n  \u003cbr\u003e\n  \u003cimg height =' 100px ' src=\"./Android/assets/OkHttp.png\" /\u003e\n  \u003cbr\u003e\n  \u003ch3\u003eBackend | API\u003c/h3\u003e\n  \u003cimg height =' 100px ' src=\"https://cdn.jsdelivr.net/gh/devicons/devicon/icons/java/java-original.svg\" /\u003e\n  \u003cimg height =' 100px ' src=\"https://cdn.jsdelivr.net/gh/devicons/devicon/icons/spring/spring-original.svg\" /\u003e\n  \u003cimg height =' 100px ' src=\"https://cdn.jsdelivr.net/gh/devicons/devicon/icons/postgresql/postgresql-original.svg\" /\u003e\n  \u003cbr\u003e\n  \u003cimg height =' 100px ' src=\"https://static1.smartbear.co/swagger/media/assets/images/swagger_logo.svg\" /\u003e\n  \u003cbr\u003e\n  \u003cimg height =' 100px ' src=\"https://jwt.io/img/logo-asset.svg\" /\u003e\n  \u003cbr\u003e\n  \u003cimg height =' 100px ' src=\"./Android/assets/redis.png\" /\u003e\n\u003c/div\u003e\n\n\u003cdiv id=\"route\"\u003e\n\u003ch2\u003e 🔎 Route \u003c/h2\u003e\n\n\u003col\u003e\n    \u003cli\u003eStep 1 - Setting up the environment\u003c/li\u003e\n    \u003cbr\u003e\n    \u003cli\u003eStep 2 - Building our API RESTful\u003c/li\u003e\n    API Architecture\n    \u003cimg src=\"./Android/assets/api-architecture.png\" alt=\"API Architecture\"\u003e\n    \u003cbr\u003e\n    Classes Diagram for Database\n    \u003cimg src=\"./Android/assets/classes-diagram.png\" alt=\"Classes diagram\"\u003e\n    \u003cbr\u003e\n    The API is based on RESTful model and contains:\n    \u003cul\u003e\n      \u003cli\u003e Spring Boot \u003c/li\u003e\n      \u003cli\u003e Spring Security and JWT \u003c/li\u003e\n      \u003cli\u003e Spring Data with PostgreSQL \u003c/li\u003e\n      \u003cli\u003e Cache with Redis \u003c/li\u003e\n      \u003cli\u003e Documentation with Swagger 2 \u003c/li\u003e\n      \u003cli\u003e Managing with Spring Actuator \u003c/li\u003e\n    \u003c/ul\u003e\n    \u003cbr\u003e\n    \u003cli\u003eStep 3 - Building our Android app\u003c/li\u003e\n    The app follows MVVM pattern e shows the technologies of:\n    \u003cul\u003e\n      \u003cli\u003eRetrofit2\u003c/li\u003e\n      \u003cli\u003eViewModel\u003c/li\u003e\n      \u003cli\u003eLiveData\u003c/li\u003e\n      \u003cli\u003eCoroutines\u003c/li\u003e\n      \u003cli\u003eKoin\u003c/li\u003e\n      \u003cli\u003eNavigation\u003c/li\u003e\n      \u003cli\u003eRoom\u003c/li\u003e\n    \u003c/ul\u003e\n    \u003cbr\u003e\n    \u003cli\u003eStep 4 - Creating our interface\u003c/li\u003e\n    \u003cbr\u003e\n    \u003cli\u003eStep 5 - Consuming a RestFULL API\u003c/li\u003e\n\u003c/ol\u003e\n\u003c/div\u003e\n\u003cbr\u003e\n\u003cbr\u003e","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falexandrecpedro%2Fpicpayclone","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falexandrecpedro%2Fpicpayclone","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falexandrecpedro%2Fpicpayclone/lists"}