{"id":15720020,"url":"https://github.com/ronanrodrigo/birthtalk","last_synced_at":"2025-05-12T13:29:34.521Z","repository":{"id":138509217,"uuid":"79402236","full_name":"ronanrodrigo/birthtalk","owner":"ronanrodrigo","description":"Meet who have birth common with you","archived":false,"fork":false,"pushed_at":"2017-06-01T22:13:01.000Z","size":463,"stargazers_count":36,"open_issues_count":3,"forks_count":4,"subscribers_count":7,"default_branch":"master","last_synced_at":"2025-03-15T06:14:51.020Z","etag":null,"topics":["birth","blogpost","clean-architecture","clean-code","fastlane","firebase","tdd"],"latest_commit_sha":null,"homepage":"","language":"Swift","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/ronanrodrigo.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":"2017-01-19T01:21:41.000Z","updated_at":"2022-01-14T03:55:09.000Z","dependencies_parsed_at":"2023-03-23T21:32:41.369Z","dependency_job_id":null,"html_url":"https://github.com/ronanrodrigo/birthtalk","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/ronanrodrigo%2Fbirthtalk","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ronanrodrigo%2Fbirthtalk/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ronanrodrigo%2Fbirthtalk/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ronanrodrigo%2Fbirthtalk/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ronanrodrigo","download_url":"https://codeload.github.com/ronanrodrigo/birthtalk/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246553017,"owners_count":20795834,"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":["birth","blogpost","clean-architecture","clean-code","fastlane","firebase","tdd"],"created_at":"2024-10-03T21:57:31.633Z","updated_at":"2025-04-01T08:31:43.828Z","avatar_url":"https://github.com/ronanrodrigo.png","language":"Swift","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1\u003e\n\u003cimg src=\"https://raw.githubusercontent.com/ronanrodrigo/birthtalk/master/Birthtalk/Base/AppIcon.png\" height=25/\u003e\nBirthtalk\n\u003c/h1\u003e\n\n[![Build Status](https://www.bitrise.io/app/b4dee8da6855abcf.svg?token=PZRRPLn8fE63D9oTQ48LrQ\u0026branch=master)](https://www.bitrise.io/app/b4dee8da6855abcf)\n[![Codecov](https://codecov.io/github/ronanrodrigo/birthtalk/coverage.svg?precision=2)](https://codecov.io/gh/ronanrodrigo/birthtalk)\n[![codebeat badge](https://codebeat.co/badges/5b082024-2523-4ea1-a64b-84915814a346)](https://codebeat.co/projects/github-com-ronanrodrigo-birthtalk-master)\n\n-------\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"#motivation\"\u003eMotivation\u003c/a\u003e •\n  \u003ca href=\"#posts\"\u003ePosts\u003c/a\u003e •\n  \u003ca href=\"#installation\"\u003eInstalation\u003c/a\u003e •\n  \u003ca href=\"#tests\"\u003eTests\u003c/a\u003e\n\u003c/p\u003e\n\n-------\n\n## Motivation\nIn a world where delivery is almost more important than the good code, I decided to create my product based on in a craft work. Following best practices in Software Development and using the least possible third party libraries. This project will be documented in a series of blog posts and the main topics will be TDD, Clean Architecture, SOLID principles and views construct by Code.\n\nThis Application will automatically create chat groups where people talk with others that have common things based on their births. It will be possible to meet who born at same day/month/year, or same day/month, or same day/month/year/city, or same zodiac sign and among other combinations.\n\n## Posts\n- [Authentication rules in a handcrafted iOS application with TDD](https://medium.com/cocoaacademymag/authentication-rules-in-a-handcrafted-ios-application-with-tdd-8db5396ebac6#.7kq4cc2x5)\n- [Firebase user registration at iOS with integration tests](https://medium.com/cocoaacademymag/firebase-user-registration-at-ios-with-integration-tests-fa450e4ec8bb)\n- [The first refactor in the user registration use case](https://medium.com/cocoaacademymag/the-first-refactor-in-the-user-registration-use-case-238240a29972)\n\n## Installation\nThis application does not have directly dependencies and libraries. But at development environment I use some tools like **[Fastlane](http://fastlane.tools)**, **[Danger](http://danger.systems)**, **[Danger Slather](https://github.com/SlatherOrg/slather)** and **[Swift Lint](https://github.com/realm/SwiftLint)**. The first three tools are  installed with ruby bundler gem and the Swift Lint is installed with brew.\n\n```shell\nbundle install\nbrew install swiftlint\n```\n\n### Note\nTemporally it will use Firebase because I am not in Apple Developer Program Membership. But shortly it will be replaced by CloudKit. Now it is necessary to install Firebase\n\n```shell\npod install\n```\n\n## Tests\nThis application use native tests library XCTest. And it is possible to run that with fastlane command.\n\n```shell\nbundle exec fastlane test\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fronanrodrigo%2Fbirthtalk","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fronanrodrigo%2Fbirthtalk","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fronanrodrigo%2Fbirthtalk/lists"}