{"id":15553552,"url":"https://github.com/tyaga001/facetime-on-stream","last_synced_at":"2025-04-12T05:42:05.384Z","repository":{"id":257369160,"uuid":"858015446","full_name":"tyaga001/facetime-on-stream","owner":"tyaga001","description":"A Facetime-style video chat app powered by Stream","archived":false,"fork":false,"pushed_at":"2024-10-09T12:21:27.000Z","size":1610,"stargazers_count":13,"open_issues_count":1,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-26T01:11:17.521Z","etag":null,"topics":["clerkauth","fullstack-development","getstream-io","nextjs","starter-project","video-streaming","webapp"],"latest_commit_sha":null,"homepage":"https://facetime-on-stream.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/tyaga001.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-09-16T06:37:43.000Z","updated_at":"2025-03-15T13:20:42.000Z","dependencies_parsed_at":"2024-09-16T09:59:16.648Z","dependency_job_id":null,"html_url":"https://github.com/tyaga001/facetime-on-stream","commit_stats":null,"previous_names":["tyaga001/facetime-on-stream"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tyaga001%2Ffacetime-on-stream","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tyaga001%2Ffacetime-on-stream/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tyaga001%2Ffacetime-on-stream/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tyaga001%2Ffacetime-on-stream/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tyaga001","download_url":"https://codeload.github.com/tyaga001/facetime-on-stream/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248525162,"owners_count":21118616,"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":["clerkauth","fullstack-development","getstream-io","nextjs","starter-project","video-streaming","webapp"],"created_at":"2024-10-02T14:37:51.422Z","updated_at":"2025-04-12T05:42:05.344Z","avatar_url":"https://github.com/tyaga001.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🚀 FaceTime with Stream\n\nWelcome to FaceTime, a video communication app powered by GetStream.io.\n\n\u003e **Check out the blog post on how I built this app [here](https://www.freecodecamp.org/news/how-i-built-a-custom-video-conferencing-app-with-stream-and-nextjs/).**\n\n![img.png](./public/getStream.png)\n\n## Demo\n\n![img.png](./public/img.png)\n\nCheck out the live demo [here](https://facetime-on-stream.vercel.app/).\n\n## 🌟 Key Features\n\n- **Real-time Video Communication**: Powered by GetStream.io for smooth, high-quality video calls.\n- **Instant Meetings**: Create on-the-fly video sessions with a single click.\n- **Scheduled Calls**: Plan ahead with our calendar integration.\n- **Shareable Links**: Generate and share meeting links easily.\n\n## 📋 Prerequisites\n\nBefore you begin, ensure you have the following:\n\n- Node.js (v14.x or higher)\n- npm (usually comes with Node.js)\n- [Clerk](https://clerk.com/) account for auth\n- [GetStream.io](https://getstream.io/) account for video streaming\n\n## 🚀 Getting Started\n\nFollow these steps to set up the project locally:\n\n### 1. Clone the Repository\n\n```bash\ngit clone https://github.com/your-username/face-time-on-stream.git\ncd face-time-on-stream\n```\n\n### 2. Install Dependencies\n\n```bash\nnpm install\n```\n\n### 3. Set Up Environment Variables\n\nCreate a `.env.local` file in the root directory and add the following:\n\n```env\n# Clerk Authentication\nNEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=your_clerk_publishable_key\nCLERK_SECRET_KEY=your_clerk_secret_key\n\n# GetStream.io\nSTREAM_APP_ID=your_stream_app_id\nNEXT_PUBLIC_STREAM_API_KEY=your_stream_api_key\nSTREAM_SECRET_KEY=your_stream_secret_key\n\n# App Configuration\nNEXT_PUBLIC_FACETIME_HOST=http://localhost:3000/facetime\n```\n\nReplace the placeholder values with your actual credentials.\n\n### 4. Run the Development Server\n\n```bash\nnpm run dev\n```\n\nYour app should now be running at [http://localhost:3000](http://localhost:3000).\n\n## 🛠 Project Structure\n\n```\nface-time-on-stream/\n│\n├── src/\n│   ├── app/\n│   │   ├── modals/\n│   │   │   ├── CreateLink.tsx\n│   │   │   ├── InstantMeeting.tsx\n│   │   │   ├── JoinMeeting.tsx\n│   │   │   └── UpcomingMeeting.tsx\n│   │   │\n│   │   ├── layout.tsx\n│   │   └── page.tsx\n│   │\n│   ├── hooks/\n│   │   └── []\n│   │\n│   └── lib/\n│       └── [util.ts]\n│\n├── public/\n│   └── stream-logo.png\n│\n├── .env.local\n├── next.config.js\n├── package.json\n└── README.md\n```\n\n## 📚 API Reference\n\n### Clerk Authentication\n\nI use Clerk for user auth. [Learn more about Clerk's API](https://clerk.com/docs/reference/clerkjs).\n\n### GetStream.io Video\n\nAll video calls are powered by GetStream.io. [Explore GetStream's video API](https://getstream.io/video/docs/).\n\n![img_1.png](public/img_1.png)\n\n## 🙏 Acknowledgements\n\n- [GetStream.io](https://getstream.io/) for their excellent video streaming platform.\n---\n\nBuilt with ❤️ by [Ankur Tyagi](https://theankurtyagi.com/)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftyaga001%2Ffacetime-on-stream","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftyaga001%2Ffacetime-on-stream","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftyaga001%2Ffacetime-on-stream/lists"}