{"id":28897186,"url":"https://github.com/fcbento/angular-20-groqai-signals-deferrable-views","last_synced_at":"2026-04-12T09:03:18.023Z","repository":{"id":271443787,"uuid":"913054289","full_name":"fcbento/angular-20-groqai-signals-deferrable-views","owner":"fcbento","description":"Chat application built using Angular 20. It works like any AI chat. Integration with Groq Cloud. Angular, Tailwind CSS, Fireabse","archived":false,"fork":false,"pushed_at":"2025-07-05T02:21:21.000Z","size":698,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-07-05T03:54:11.113Z","etag":null,"topics":["angular","firebase","tailwind"],"latest_commit_sha":null,"homepage":"https://ai-chat-7c843.web.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/fcbento.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,"zenodo":null}},"created_at":"2025-01-07T00:04:27.000Z","updated_at":"2025-07-05T02:21:24.000Z","dependencies_parsed_at":null,"dependency_job_id":"fa922140-f9b3-46e4-9804-c948ed081000","html_url":"https://github.com/fcbento/angular-20-groqai-signals-deferrable-views","commit_stats":null,"previous_names":["fcbento/angular-19-groqai-signals-deferrable-views","fcbento/angular-20-groqai-signals-deferrable-views"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/fcbento/angular-20-groqai-signals-deferrable-views","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fcbento%2Fangular-20-groqai-signals-deferrable-views","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fcbento%2Fangular-20-groqai-signals-deferrable-views/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fcbento%2Fangular-20-groqai-signals-deferrable-views/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fcbento%2Fangular-20-groqai-signals-deferrable-views/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fcbento","download_url":"https://codeload.github.com/fcbento/angular-20-groqai-signals-deferrable-views/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fcbento%2Fangular-20-groqai-signals-deferrable-views/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274422607,"owners_count":25282125,"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-09-10T02:00:12.551Z","response_time":83,"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":["angular","firebase","tailwind"],"created_at":"2025-06-21T06:05:30.259Z","updated_at":"2026-04-12T09:03:17.993Z","avatar_url":"https://github.com/fcbento.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Integration with GroqAI - Angular 20 \n\nA chat application built using Angular 20. It works like any AI chat, allowing users to chat in real time with an AI. The application is connected to GroqAI, an AI service that understands and generates natural language, providing quick responses to user messages. This project was created to practce some of the new Angular features and understand a bit how AI services provide messages to the client.\n\n## Live preview\n\nhttps://ai-chat-7c843.web.app/\n\n## Prerequisites\n\nRequirements for running the app locally\n- [Node](https://nodejs.org/)\n- [Npm](https://www.npmjs.com/)\n\n## How to use\n\n**Required**: A Groq apiKey to fill the groq object in **environments.ts**\n\nhttps://console.groq.com/\n\nExample: \n\n```bash\n  groq: {\n    apiKey: 'YOUR_API_KEY',\n    dangerouslyAllowBrowser: true,\n    model: 'llama-3.3-70b-versatile',\n    role: 'user'\n  }\n```\n\n```bash\n# Clone this repository\n$ git clone https://github.com/fcbento/angular-20-groqai-signals-deferrable-views.git\n\n# Go into the repository\n$ cd angular-20-groqai-signals-deferrable-views\n\n# Install dependencies\n$ npm install\n\n# Run the app\n$ ng serve\n\n# Unit tests\n$ npm run test\n\n```\n\n## How It Works\n\n- User enters a message in the chat input.\n- The message is emitted and added to the chat history.\n- The AI service is called for a response.\n- The AI's response is added to the chat history.\n\n## CI / CD\n\nThis project uses **GitHub Actions** for continuous deployment to **Firebase Hosting**. Whenever changes are pushed to the main branch, a GitHub Actions workflow automatically builds and deploys the latest version to Firebase. Also runs unit tests on every push and pull request. Check folder: **.github/workflows**\n\n\u003cimg alt=\"example\" width=\"800\" src=\"cicd.png\"\u003e\n\u003cimg alt=\"example\" width=\"800\" src=\"deploy.png\"\u003e\n\n## Tests Coverage\n\n\u003cimg alt=\"example\" width=\"800\" src=\"coverage.png\"\u003e\n\n## Chat input message\n\n\u003cimg alt=\"example\" width=\"800\" src=\"chat.png\"\u003e\n\n## TODO\n\n- [ ] Enhance UI\n- [ ] Delay incoming messages from the server\n\n## Built With\n\nThis was created with the following tech stack.\n\n[![My Skills](https://skillicons.dev/icons?i=angular,rxjs,firebase,typescript,vscode,windows,githubactions\u0026perline=10)](https://skillicons.dev)\n\n## Top contributors\n\n\u003ca href=\"https://github.com/fcbento/angular-20-groqai-signals-deferrable-views/graphs/contributors\"\u003e\n  \u003cimg src=\"https://contrib.rocks/image?repo=fcbento/angular-20-groqai-signals-deferrable-views\" alt=\"contrib.rocks image\"/\u003e\n\u003c/a\u003e\n\n## Contact\n\n[![linkedin](https://skillicons.dev/icons?i=linkedin)](https://linkedin.com/in/felipe-bento)\n[![discord](https://skillicons.dev/icons?i=discord)](https://discordapp.com/users/413141379074490369)\n[![gmail](https://skillicons.dev/icons?i=gmail)](mailto:felipe.16costa@gmail.com)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffcbento%2Fangular-20-groqai-signals-deferrable-views","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffcbento%2Fangular-20-groqai-signals-deferrable-views","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffcbento%2Fangular-20-groqai-signals-deferrable-views/lists"}