Categorygithub.com/drewstinnett/letswatch
modulepackage
0.0.1
Repository: https://github.com/drewstinnett/letswatch.git
Documentation: pkg.go.dev

# README

Let's Watch

Library and tool for interacting with various film sites and APIs.

Pulls together APIs from:

  • Letterboxd - uses go-letterboxd to scrape film data
  • TMDB - Uses the legit TMDB API

Caches results to a local Redis cache. For quickly accessing data.

Prerequisites

This project uses the amazing Cobra/Viper library for command line parsing. To bootstrap with your personal info, use something like this in your ~/.letswatch.yaml:

---
letterboxd-username: 'my-username'
subscribed-to:
  - "HBO Max"
  - "Shudder"

Examples

By default, the films we have already watched (and logged on letterboxd.com) are excluded from any recommended listings.

Get a list of the top 250 narrative films that are available on my streaming services

$ letswatch recommend --list dave/official-top-250-narrative-feature-films --only-my-streaming
   • Getting lists
   • Getting watched films
   • Fetching list films       slug=official-top-250-narrative-feature-films username=dave
- title: Harakiri
  release_year: 1962
  imdb_link: https://www.imdb.com/title/tt0056058
  language: ja
  runtime: 2h15m0s
  streaming_on:
    - Criterion Channel
  genres:
    - Action
    - Drama
    - History
... SNIP ...
   • Run stats                 duration=10.685447243s total_items=133
...

# Packages

Copyright © 2022 Drew Stinnett <[email protected]> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

# Functions

No description provided by the author
No description provided by the author
No description provided by the author
MatchesGlobOf returns true if an item matches any of the given globs.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
ValidateEnv takes a list of strings, and returns an error if they do not exist as ENV vars.

# Structs

No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author

# Interfaces

No description provided by the author
No description provided by the author
No description provided by the author