{"id":36660131,"url":"https://github.com/pzierahn/chatbot_app","last_synced_at":"2026-01-12T10:26:35.942Z","repository":{"id":191036039,"uuid":"683797961","full_name":"pzierahn/chatbot_app","owner":"pzierahn","description":"LLM-powered chatbot app to enhance accessibility to knowledge contained within PDFs","archived":false,"fork":false,"pushed_at":"2025-05-06T20:59:44.000Z","size":1291,"stargazers_count":12,"open_issues_count":0,"forks_count":3,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-05-06T21:40:10.549Z","etag":null,"topics":["chatbot","flutter","rag"],"latest_commit_sha":null,"homepage":"","language":"Dart","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/pzierahn.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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":"2023-08-27T18:19:54.000Z","updated_at":"2025-05-06T20:59:33.000Z","dependencies_parsed_at":null,"dependency_job_id":"854f62de-0281-4f3f-bd32-22bdffc18008","html_url":"https://github.com/pzierahn/chatbot_app","commit_stats":null,"previous_names":["pzierahn/braingain_app","pzierahn/brainboost_app","pzierahn/chatbot_app"],"tags_count":74,"template":false,"template_full_name":null,"purl":"pkg:github/pzierahn/chatbot_app","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pzierahn%2Fchatbot_app","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pzierahn%2Fchatbot_app/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pzierahn%2Fchatbot_app/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pzierahn%2Fchatbot_app/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pzierahn","download_url":"https://codeload.github.com/pzierahn/chatbot_app/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pzierahn%2Fchatbot_app/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28338285,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-12T06:09:07.588Z","status":"ssl_error","status_checked_at":"2026-01-12T06:05:18.301Z","response_time":98,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["chatbot","flutter","rag"],"created_at":"2026-01-12T10:26:34.877Z","updated_at":"2026-01-12T10:26:35.936Z","avatar_url":"https://github.com/pzierahn.png","language":"Dart","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Chatbot\n\nBrainboost is an application designed to improve the performance of chatbots by employing a method\nknown as Retrieval Augmented Generation (RAG). It functions by extracting information from websites\nand PDF files and feeding this information into the chatbot to minimize errors or hallucinations in\nits responses. This allows users to interactively ask questions and receive information directly\nfrom PDFs and websites, making the chatbot a more reliable source for accurate information.\n\n## Features\n\n1. **Knowledge Extraction:** Seamlessly extract knowledge from PDFs and websites, making it easier\n   than ever to access the information you need.\n2. **Intelligent Information Retrieval:** Brainboost automatically finds the right information in\n   response to your queries. By ensuring the model has access to relevant data, we significantly\n   reduce the chances of generating inaccurate or irrelevant information.\n3. **Interactive Q\u0026A:** Don’t just stop at your first question; our app supports the asking of\n   follow-up questions, enabling a deeper and more precise exploration of topics.\n4. **Explicit Knowledge Addition:** You have the freedom to add specific knowledge to your prompts,\n   further reducing the likelihood of hallucinations and enhancing the model's accuracy.\n5. **Cross-Platform Compatibility:** Regardless of your device preference, our application ensures a\n   seamless and efficient experience across various platforms.\n\n## Use Cases\n\nThe versatility of our RAG App makes it an indispensable tool across various fields:\n\n- **Students and Researchers**: Summarize academic content from papers, textbooks, and online\n  resources quickly and efficiently.\n- **Professionals**: Extract pivotal information from an array of business documents, including\n  reports, proposals, and industry-specific texts.\n\n## Demo video\n\nThe [demo video](https://youtu.be/Whr3nZ6-82c) shows the basic functionality of the app:\n\n[![Chatbot Demo](https://img.youtube.com/vi/Whr3nZ6-82c/0.jpg)](https://youtu.be/Whr3nZ6-82c)\n\n## Run with Docker\n\nTo run the app with Docker, follow these steps:\n\n```bash\ndocker build -t chatbot .\ndocker run --rm -p 80:80 chatbot\n```\n\n## Additional Details and Setup Instructions\n\n```bash\n.\n├── CHANGELOG.md         # Changelog of the project\n├── android              # Android specific files\n├── assets               # Static assets like images, fonts, etc.\n├── ios                  # iOS specific files\n├── lib                  # All dart source code\n│   ├── generated        # Code that was generated and shouldn't be touched!\n│   ├── services         # Services providers, like the doorman-service, for UI components\n│   ├── ui               # All User Interface components and Widgets\n│   │   ├── pages        # All pages in the App\n│   │   ├── theme        # Theme data like fonts, colors, shapes, etc.\n│   │   └── widgets      # Widgets and dialogs that are shared across pages\n│   └── utils            # Helper functions that are used across components\n├── macos                # MacOS specific files\n├── pubspec.yaml         # Project configuration\n```\n\n### Project Requirements:\n\nThis project is developed using **Flutter**, a popular open-source framework by Google for building\nnatively compiled applications for mobile, web, and desktop from a single codebase. To successfully\nrun and build this project, developers must have a basic understanding of Flutter and the Dart\nprogramming language.\n\n### Google Firebase Integration:\n\n**Brainboost** requires **Google Firebase** for its operation. Firebase provides a suite of cloud\nservices designed to support applications, including realtime databases, authentication services,\nanalytics, and more. To integrate Firebase into the Brainboost project, follow these setup\ninstructions:\n\n1. Visit the Firebase official setup guide for Flutter\n   apps: [Firebase Setup Instructions](https://firebase.google.com/docs/flutter/setup).\n2. Follow the guided steps to create a Firebase project and connect it with your Brainboost\n   application.\n3. Once set up, download and integrate the `google-services.json` (for Android)\n   and `GoogleService-Info.plist` (for iOS) into your project as directed in the Firebase setup\n   guide. This will link your application with Firebase services.\n\n### Backend Services:\n\nThe backend services for Brainboost are separately managed and can be found\nat [Brainboost Backend Services](https://github.com/pzierahn/chatbot_services). The backend is\ncrucial for handling complex operations that are not feasible to run on the client-side, such as\nintensive computations, storing and managing databases, authentication, and more.\n\n**Changing the Backend Address:**\n\n- If you need to point your Brainboost application to a different backend address (for example, if\n  you're hosting your version of the backend), you must update the backend service URL.\n- This configuration is located in the file `lib/service/brainboost.dart`. Search for a variable or\n  method that specifies the backend URL and alter it to your new backend service address.\n\n### Getting Started with Flutter:\n\nSince Brainboost is written in Flutter, developers aiming to contribute or modify the project need\nto have Flutter installed on their development machines. Here’s a quick guide to get started:\n\n1. Download and install Flutter by following the official\n   guide: [Install Flutter](https://flutter.dev/docs/get-started/install).\n2. Ensure that your development environment is set up according to the guides for your target\n   platform (iOS, Android, Web, Desktop).\n3. Once Flutter is installed, you can clone the Brainboost repository to your local machine.\n4. Navigate to the project directory in your terminal, and run `flutter pub get` to install all the\n   dependencies.\n5. With the dependencies installed, you can now open the project in your preferred IDE or editor to\n   start development.\n\nBy following these additional setup and project requirements, you will be well on your way to\nutilizing, modifying, or contributing to the Brainboost project.\n\n### Prepare a new release\n\nPrepare a new release by following these steps:\n\n1. Update flutter version to the newest version: `flutter upgrade`\n2. Update the changelog in `CHANGELOG.md`\n3. Update the version and build number in `pubspec.yaml`\n4. Update version in `lib/main.dart`\n5. Update dependencies\n    1. Update flutter dependencies:`flutter pub upgrade`\n    2. Update iOS dependencies: `cd ios \u0026\u0026 pod update \u0026\u0026 cd ..`\n    3. Update Android dependencies: `cd android \u0026\u0026 ./gradlew app:dependencies \u0026\u0026 cd ..`\n    4. Update MacOS dependencies: `cd macos \u0026\u0026 pod update \u0026\u0026 cd ..`\n6. Push all changes to `main` branch with `git push`\n7. Create a new git tag:\n    1. `git tag vX.X.X`\n    2. `git push origin vX.X.X`\n\nAfter the release is merged into the `stable` branch, the new release will be automatically deployed\nby using Google Cloud Run.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpzierahn%2Fchatbot_app","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpzierahn%2Fchatbot_app","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpzierahn%2Fchatbot_app/lists"}