Skip to content
Keep track of your favorite TV shows and movies on your iPhone.
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci Bump everything to use Swift 5.0.1 May 18, 2019
CouchTracker Bump build 43 May 20, 2019
CouchTrackerApp Bump build 43 May 20, 2019
CouchTrackerAppTestable Bump build 43 May 20, 2019
CouchTrackerCore-iOS Bump build 43 May 20, 2019
CouchTrackerCore Generating properties and closures for enums Jul 2, 2019
CouchTrackerCoreTests Bump build 43 May 20, 2019
CouchTrackerDebug Bump build 43 May 20, 2019
CouchTrackerPersistence Bump build 43 May 20, 2019
CouchTrackerPlayground.playground Move TVDBSwift to CouchTracker repository May 17, 2019
CouchTrackerUITests Bump build 43 May 20, 2019
Readme-Images Add some app screenshots May 1, 2019
SourceryTemplates Generating properties and closures for enums Jul 2, 2019
TMDBSwift-iOS Bump build 43 May 20, 2019
TMDBSwift Bump build 43 May 20, 2019
TMDBSwiftTestable Bump build 43 May 20, 2019
TMDBSwiftTests Bump build 43 May 20, 2019
TVDBSwift-iOS Bump build 43 May 20, 2019
TVDBSwift Bump build 43 May 20, 2019
TVDBSwiftTestable Bump build 43 May 20, 2019
TVDBSwiftTests Bump build 43 May 20, 2019
TraktSwift-iOS Bump build 43 May 20, 2019
TraktSwift Bump build 43 May 20, 2019
TraktSwiftTestable Bump build 43 May 20, 2019
TraktSwiftTests Bump build 43 May 20, 2019
build_phases Add Swiftlint and swiftformat build phases to CouchTracker target. May 19, 2019
fastlane We need to generate the project and run cocoapods always Jul 2, 2019
scripts Remove unused code to generate swift code Jul 2, 2019
.codecov.yml Fix folders on sonar, swiftlint and codecov Feb 21, 2018
.editorconfig Add EditorConfig; Update all swift files Feb 20, 2018
.gitignore We are able to generate the project, but there a lot missing May 18, 2019
.sourcery.yml Adding Sourcery to create enum properties and more Jul 2, 2019
.swift-version Bump everything to use Swift 5.0.1 May 18, 2019
.swiftformat Add Swiftlint and swiftformat build phases to CouchTracker target. May 19, 2019
.swiftlint.yml Fix more warning May 19, 2019
.tuist-version Bump everything to use Swift 5.0.1 May 18, 2019
Brewfile Adding Sourcery to create enum properties and more Jul 2, 2019
Gemfile Change crash report tool to Bugsnag May 3, 2019
Gemfile.lock Change crash report tool to Bugsnag May 3, 2019
Podfile Remove NonEmpty since was breaking the compilation May 19, 2019
Podfile.lock Remove NonEmpty since was breaking the compilation May 19, 2019
Project.swift Add "DEBUG" preprocessor flag for Debug configuration May 20, 2019
Readme.md Add environment requiments May 18, 2019
UNLICENSE First commit Oct 20, 2017
changelog.md Bump build 43 May 20, 2019
setup.sh Fix tuist install URL Jul 3, 2019
sonar-project.properties Add CouchTrackerApp folder on sonar properties Dec 31, 2018

Readme.md

CouchTracker

Keep track of your favorite movies and tv shows on your iPhone

CircleCI codecov Quality Gate Status Twitter FOSSA Status Tuist Badge

Setup for development

You will need

  • Xcode 10.2.1
  • Swift 5.0.1

Run the following commands

  • git clone git@github.com:pietrocaselani/CouchTracker.git

  • cd CouchTracker && sh setup.sh

  • tuist generate

  • bundle exec pod install

  • open CouchTracker.xcworkspace

  • This project uses the Trakt API, TMDB API and TVDB API

  • To run the app, please create a file at CouchTrackerApp/Utils/Secrets.swift with yours API keys like this

enum Secrets {
  enum Trakt {
    static let clientId = "API_KEY"
    static let clientSecret = "API_KEY"
    static let redirectURL = "API_KEY"
  }

  enum TMDB {
    static let apiKey = "API_KEY"
  }

  enum TVDB {
    static let apiKey = "API_KEY"
  }

  enum Bugsnag {
    static let apiKey = "API_KEY"
  }
}

Project structure

The project is split into a few frameworks

  • CouchTrackerCore: It's a macOS framework that has all the code that is not UI (Views, ViewControllers). This framework shouldn't have dependencies that only work on iOS.

  • CouchTrackerCore-iOS: It's the iOS version of CouchTrackerCore. You won't find any files here, all files are on CouchTrackerCore.

  • CouchTrackerCoreTests: The test bundle for CouchTrackerCore. Tests run directly on the macOS, there is no need to use the iOS simulator to run those tests.

  • CouchTrackerPersistence: Here you will find entities and data sources and other things related to the persistence layer of the app. I moved this layer to another framework with the idea of changing the persistence tool in the future. Right now Realm is being used.

  • CouchTrackerApp: Here you will find all the code related to UI and dependent on UIKit, so things like Views, ViewControllers. It's possible to import this framework into CouchTrackerPlayground.playground to see a preview of screens since the use of storyboards is being avoided.

  • CouchTracker: It's the app itself. You will only find the AppDelegate here.

License

FOSSA Status

You can’t perform that action at this time.