{"id":22980824,"url":"https://github.com/tmphat1312/movred","last_synced_at":"2025-04-02T09:41:41.334Z","repository":{"id":266459075,"uuid":"898301886","full_name":"tmphat1312/movred","owner":"tmphat1312","description":"Movies recommendation web application - Advanced web development course final project","archived":false,"fork":false,"pushed_at":"2025-01-16T07:25:52.000Z","size":12955,"stargazers_count":0,"open_issues_count":4,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-08T00:42:19.486Z","etag":null,"topics":["movies","nextjs","project","recommendation"],"latest_commit_sha":null,"homepage":"https://movred.vercel.app","language":"TypeScript","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/tmphat1312.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":"2024-12-04T06:40:20.000Z","updated_at":"2025-01-28T05:09:24.000Z","dependencies_parsed_at":"2025-01-11T13:25:59.424Z","dependency_job_id":"995d3e9b-8970-49d5-96b4-6c9ec6b4add5","html_url":"https://github.com/tmphat1312/movred","commit_stats":null,"previous_names":["tmphat1312/movred"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tmphat1312%2Fmovred","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tmphat1312%2Fmovred/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tmphat1312%2Fmovred/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tmphat1312%2Fmovred/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tmphat1312","download_url":"https://codeload.github.com/tmphat1312/movred/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246792879,"owners_count":20834920,"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":["movies","nextjs","project","recommendation"],"created_at":"2024-12-15T01:45:05.857Z","updated_at":"2025-04-02T09:41:41.309Z","avatar_url":"https://github.com/tmphat1312.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# MovRed - Movie Recommendations\n\nMovred is a web application all about movie recommendations, make sure you don't struggle with binge-watching after visiting [`movred.vercel.app`](https://movred.vercel.app/).\n\n## Getting Started\n\n### Prerequisites\n\nManually local setup:\n\n- [`Node.js`](https://nodejs.org/) \u003e= 20 - to run the project.\n- And `others` regular setup you could do yourself like VS Code extensions, Git, etc.\n\nWith `Docker` and [`Dev Container`](https://containers.dev/):\n\n- Install `Dev Container` extension in VS Code (or your editor of choice).\n- Open this repo in the container and you are good to go.\n\n### Start development server\n\nFirst, do whatever possible to get this repository.\n\nSecond, install dependencies:\n\n```bash\nnpm install\n```\n\nThird, create `.env.local` or `.env` file and fill in all variables displayed in `.env.example`:\n\n```bash\n# clerk.com\nNEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=\nCLERK_SECRET_KEY=\n\nNEXT_PUBLIC_CLERK_SIGN_IN_URL=/sign-in\nNEXT_PUBLIC_CLERK_SIGN_UP_URL=/sign-up\n\nNEXT_PUBLIC_CLERK_SIGN_IN_FORCE_REDIRECT_URL=/\nNEXT_PUBLIC_CLERK_SIGN_UP_FORCE_REDIRECT_URL=/\n\nTMDB_READ_ACCESS_TOKEN=\nTMDB_API_KEY=\n\n# Turso.tech\nDATABASE_URL=\nDATABASE_AUTH_TOKEN=\n```\n\n\u003e **Note**: `NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY` and `CLERK_SECRET_KEY` are from [`clerk.com`](https://clerk.com/)\n\n\u003e **Note**: `DATABASE_URL` and `DATABASE_AUTH_TOKEN` are from [`turso.tech`](https://turso.tech/)\n\nNext, make sure you run the migration command (_not migration script_):\n\n```bash\nnpm run db:push\n```\n\n\u003e **Note**: Migration scripts will be stored on `Turso` cloud.\n\n\u003e **Note**: You should get some data for your database before start the development server!.\n\nFinally, run the development server:\n\n```bash\nnpm run dev\n```\n\nOpen [`http://localhost:3000`](http://localhost:3000) with your browser to see the result.\n\n### Get some data to your application\n\nFirst, create static data by running this command:\n\n```bash\nnpm run db:port\n```\n\n\u003e **Note**: Since other types of data are too large to include in the source, if possible please find some time to scrape data following the instruction below.\n\nSecond (optional), scrape some data from [`tmdb API`](https://developer.themoviedb.org/docs/getting-started) by running (it will take a while):\n\n```bash\nnpm run db:scrape\n```\n\n\u003e **Note**: \u003cbr /\u003eYou can adjust how many movie records to scrape in `./src/data/__scrape-data.ts` on the two variables `fromPage` and `toPage`. \u003cbr /\u003e The total number of movie records is `(toPage - fromPage) * 20`. By default, `fromPage = 1` and `toPage=5`.\n\n## Licence\n\nNo, you must not use this project for any purposes without my permission.\n\n## Learn More\n\nTo learn more about Next.js, take a look at the following resources:\n\n- [`Next.js Documentation`](https://nextjs.org/docs) - learn about Next.js features and API.\n- [`Learn Next.js`](https://nextjs.org/learn) - an interactive Next.js tutorial.\n\n\u003e You can check out [`the Next.js GitHub repository`](https://github.com/vercel/next.js) - your feedback and contributions are welcome!\n\nTo learn more about TailwindCSS, take a look at:\n\n- [`TailwindCSS Documenation`](https://tailwindcss.com/) - learn about utility classes and functionalities of Tailwind.\n- [`Tailwind Motion`](https://rombo.co/tailwind/) - beautiful animations all for free.\n\nThis project is not here without:\n\n- [`Clerk Authentication`](https://clerk.com/) - the most comprehensive User Management Platform.\n- [`Turso Database`](https://turso.tech/) - the way to go for SQLite lovers.\n- [`Drizzle ORM`](https://orm.drizzle.team/) - a loving ORM for TypeScript lovers.\n\n## Deployment\n\n### Docker\n\nThe `Dockerfile` is already there for you to mess around with `Docker`. Alternatively, you could use my hosted version on [`tmphat1312/movred`](https://hub.docker.com/repository/docker/tmphat1312/movred/general).\n\n\u003e **Note**: Make sure enviroment variables are included correctly.\n\n### Vercel\n\nThe easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template\u0026filter=next.js\u0026utm_source=create-next-app\u0026utm_campaign=create-next-app-readme) from the creators of Next.js.\n\nCheck out our [Next.js deployment documentation](https://nextjs.org/docs/app/building-your-application/deploying) for more details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftmphat1312%2Fmovred","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftmphat1312%2Fmovred","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftmphat1312%2Fmovred/lists"}