{"id":13593182,"url":"https://github.com/hakanersu/iwatched","last_synced_at":"2025-10-10T17:44:10.441Z","repository":{"id":37425013,"uuid":"270168922","full_name":"hakanersu/iwatched","owner":"hakanersu","description":"Track movies or tv shows you watched.","archived":false,"fork":false,"pushed_at":"2022-03-19T11:29:53.000Z","size":38168,"stargazers_count":129,"open_issues_count":6,"forks_count":9,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-09-24T16:49:44.238Z","etag":null,"topics":["imdb","laravel","movie"],"latest_commit_sha":null,"homepage":"","language":"PHP","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/hakanersu.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}},"created_at":"2020-06-07T02:33:27.000Z","updated_at":"2025-06-08T23:06:57.000Z","dependencies_parsed_at":"2022-08-18T23:40:47.665Z","dependency_job_id":null,"html_url":"https://github.com/hakanersu/iwatched","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/hakanersu/iwatched","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hakanersu%2Fiwatched","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hakanersu%2Fiwatched/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hakanersu%2Fiwatched/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hakanersu%2Fiwatched/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hakanersu","download_url":"https://codeload.github.com/hakanersu/iwatched/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hakanersu%2Fiwatched/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279004820,"owners_count":26083784,"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","status":"online","status_checked_at":"2025-10-10T02:00:06.843Z","response_time":62,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["imdb","laravel","movie"],"created_at":"2024-08-01T16:01:17.377Z","updated_at":"2025-10-10T17:44:10.426Z","avatar_url":"https://github.com/hakanersu.png","language":"PHP","funding_links":[],"categories":["PHP"],"sub_categories":[],"readme":"### iWatched\n\nI am currently working on a new version which you can find in pull requests. Also here is a [demo](https://xuma.dev)\n\niWatched is movie, tv series tracker for personal usage. iWatched uses [imdb dataset](https://datasets.imdbws.com/). By a command it downloads all required datasets, unzips and imports to PostgreSQL database.\n\nImport part is done by native PostgreSql command copy with Eloquent query builder. Part of the importing process also added weight column which will help ranking more accurately. You can find more information about imdb ranking algorithm [here](https://en.wikipedia.org/wiki/IMDb#Rankings).\n\n### Searching\n\nBy default search is done by elasticsearch if you wish to search directly from database add `ELASTICSEARCH=false` variable to you .env file. Keep in mind database search is very slow.\n\n### ElasticSearch\n\nYou can use [abc tool](https://github.com/appbaseio/abc) to import titles table. After that you will get pretty fast search results.\n\n```sh\nabc import --src_type=postgres --src_filter=titles --src_uri=\"postgresql://postgres:\u003cyour-password\u003e@127.0.0.1:5432/\u003cdatabase-name\u003e\" \"http://localhost:9200/titles\"\n```\n\n![Image of Searching](./public/images/search.gif)\n\nYou can also use some shortcuts to find desired title.\n\n```sh\nthe gift :year 2000\n```\n\n```sh\ntt0903747 :imdb\n```\n\n### Movies\n\n![Image of Movies](./public/images/movies.png)\n\n### Series\n\n![Image of Series](./public/images/series.png)\n\n### Posters\n\nPosters automatically fetched from themoviedb.org and stored at default storage.\n\n### Commands\n\n```sh\nphp artisan import:titles\n```\n\nYou can skip tables.\n\n```sh\nphp artisan import:titles --skip=title\n```\n\nOr import only given tables.\n\n```sh\nphp artisan import:titles --only=rating\n```\n\n### Docker compose\n\nCheck .env.example file and be sure above ports not used.\n\n```dotenv\nPSQL_PORT=5439:5432\nAPP_PORT=8000:8000\n```\n\n#### Commands\n\n```\ndocker-compose up -d\n\n# If you getting any error when storage:link just remove public/storage folder.\ndocker-compose run --rm --no-deps iwatched-server php artisan storage:link\n# This will migrate basic user tables.\ndocker-compose run --rm --no-deps iwatched-server php artisan migrate\n# Downloads imdb dataset if its not already downloaded and imports to pgsql.\ndocker-compose run --rm --no-deps iwatched-server php artisan import:titles\n```\n\nYou can now access app http://localhost:8000 with this url.\n\n```\n# If you start docker-compose recently please wait es cluster up and try again.\ndocker-compose run --rm --no-deps iwatched-server php artisan import:elastic\n```\n\nAfter first run you can start/stop app with below commands.\n\n```\ndocker-compose start\ndocker-compose stop\n```\n### TODO\n\n- [ ] Minio/AWS integration for posters.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhakanersu%2Fiwatched","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhakanersu%2Fiwatched","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhakanersu%2Fiwatched/lists"}