{"id":22763175,"url":"https://github.com/schbenedikt/search-engine","last_synced_at":"2026-04-13T10:31:08.915Z","repository":{"id":243467142,"uuid":"812518528","full_name":"SchBenedikt/search-engine","owner":"SchBenedikt","description":"AI search engine","archived":false,"fork":false,"pushed_at":"2026-01-17T09:17:49.000Z","size":468,"stargazers_count":4,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-01-17T20:24:16.492Z","etag":null,"topics":["ai","artificial-intelligence","awesome","bootstrap","bootstrap5","container","database","docker","engine","features","google-ai","mysql","python","search"],"latest_commit_sha":null,"homepage":"https://schbenedikt.github.io/search-engine/","language":"HTML","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/SchBenedikt.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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-06-09T05:56:30.000Z","updated_at":"2025-05-18T16:35:51.000Z","dependencies_parsed_at":"2024-06-09T06:44:31.275Z","dependency_job_id":"c939dba6-edbc-40f9-bb90-bc93a70aebbb","html_url":"https://github.com/SchBenedikt/search-engine","commit_stats":null,"previous_names":["schbenedikt/search-engine"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/SchBenedikt/search-engine","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SchBenedikt%2Fsearch-engine","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SchBenedikt%2Fsearch-engine/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SchBenedikt%2Fsearch-engine/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SchBenedikt%2Fsearch-engine/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SchBenedikt","download_url":"https://codeload.github.com/SchBenedikt/search-engine/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SchBenedikt%2Fsearch-engine/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31748890,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-13T09:16:15.125Z","status":"ssl_error","status_checked_at":"2026-04-13T09:16:05.023Z","response_time":93,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6: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":["ai","artificial-intelligence","awesome","bootstrap","bootstrap5","container","database","docker","engine","features","google-ai","mysql","python","search"],"created_at":"2024-12-11T11:07:28.532Z","updated_at":"2026-04-13T10:31:08.885Z","avatar_url":"https://github.com/SchBenedikt.png","language":"HTML","readme":"# 🚀 Search Engine \nThe matching search engine to my [web crawler](https://github.com/SchBenedikt/web-crawler).\n\n![Search · 4 31pm · 04-12](https://github.com/user-attachments/assets/88c0138a-77c5-440e-a1ce-ae4f583843a5)\n\n## ✨ Features \n- 🌐 **Modern 3D Interactive Landing Page** with full-screen visualizations that dynamically adapt to different screen sizes \n- 🤖 **AI-Powered Answers** providing instant responses with verified sources \n- 📚 **Knowledge Panels** displaying relevant information from Wikipedia and trusted sources \n- ⚡ **Smart Search** with real-time search speed display \n- 📝 **Website Summaries** generated by AI to save reading time \n- 🔍 **Google Integration** for comprehensive search results \n- 🌙 **Dark Mode Support** for comfortable viewing in all lighting conditions \n- 📱 **Responsive Design** optimized for all devices \n- 🗄️ **MongoDB Backend** for efficient data operations \n\n## 📄 Detailed Feature Overview \n![Capture-2025-04-12-163138](https://github.com/user-attachments/assets/b70ec5c0-a7ea-4c12-8618-42e6ee9afc5a)\n\n### 🌐 Modern 3D Landing Page \nThe search engine features a stunning 3D visualization on the landing page created with Three.js. The visualization creates an immersive experience with:\n- 🖱️ Dynamic node connections that respond to mouse movements \n- 📱 Responsive design that works across devices \n\n### 🤖 AI-Powered Features \nThe search engine leverages AI for multiple features:\n- 💡 **Smart Answers**: Get direct answers to questions without needing to visit multiple websites \n- 📝 **Content Summaries**: AI-generated summaries of web pages to quickly understand their content \n- 🔍 **Query Understanding**: Intelligent parsing of search queries to deliver more relevant results \n![Search](https://github.com/user-attachments/assets/4070ed36-128f-44b1-83f2-06796344a3fb)\n\n### 📚 Knowledge Panels \nKnowledge panels provide quick access to key information about searched topics:\n- 🌐 Information from Wikipedia and other trusted sources \n- 📸 Quick facts, images, and related links \n- 🔍 Context-aware information based on search query \n\n### ⚡ Search Interface \nThe search interface is designed for maximum usability:\n- 🧼 Clean, distraction-free design \n- 💬 Real-time search suggestions \n- ⏱️ Search speed display \n- 🔍 Filter options for refined results \n\n### 🛠️ Technical Specifications \n- 🖥️ Built with Flask and modern frontend technologies \n- 🗄️ MongoDB for efficient data storage and retrieval \n- 📱 Responsive Bootstrap-based UI with custom enhancements \n- 🌐 Three.js for 3D visualizations \n- 🌙 Dark mode implementation with CSS variables and prefers-color-scheme media queries \n\n\n![image](https://github.com/user-attachments/assets/bd1646eb-cece-4a97-9993-8c3ae4ce90f2)\n\n\n## 🐳 Docker Instructions \n\n### 🛠️ Building the Docker Image \n\nTo build the Docker image, run the following command in the root directory of the repository:\n\n```sh\ndocker build -t ghcr.io/schbenedikt/search-engine:latest .\n```\n\n### 🚀 Running the Docker Container \n\nTo run the Docker container, use the following command:\n\n```sh\ndocker run -p 5560:5560 ghcr.io/schbenedikt/search-engine:latest\n```\n\nThis will start the Flask application using Gunicorn as the WSGI server, and it will be accessible at `http://localhost:`.\n\n### 📥 Pulling the Docker Image \n\nThe Docker image is publicly accessible. To pull the Docker image from GitHub Container Registry, use the following command:\n\n```sh\ndocker pull ghcr.io/schbenedikt/search-engine:latest\n```\n\n### 📝 Note \nEnsure that the `tags` field in the GitHub Actions workflow is correctly set to `ghcr.io/schbenedikt/search-engine:latest` to avoid multiple packages.\n\n### 🐳 Running with Docker Compose \n\nTo run both the search engine and MongoDB containers using Docker Compose, use the following command:\n\n```sh\ndocker-compose up\n```\n\nThis will start both containers and the Flask application will be accessible at `http://localhost:`.\n\n### 📄 Docker Compose File \n\nThe `docker-compose.yml` file is used to manage both the search engine and MongoDB containers. Here is an example of the `docker-compose.yml` file:\n\n```yaml\nversion: '3.8'\n\nservices:\n  search-engine:\n    image: ghcr.io/schbenedikt/search-engine:latest\n    depends_on:\n      - mongodb\n    ports:\n      - \"5560:5560\"\n\n  mongodb:\n    image: mongo:latest\n    ports:\n      - \"27017:27017\"\n    volumes:\n      - mongo-data:/data/db\n\nvolumes:\n  mongo-data:\n```\n\n### 🗄️ Database Configuration \n\nThe `db_config.json` file is used to store the database configuration. Here is an example of the `db_config.json` file:\n\n```json\n[\n  {\n    \"url\": \"mongodb://localhost:27017\",\n    \"name\": \"search_engine\",\n    \"username\": \"your_username\",\n    \"password\": \"your_password\"\n  }\n]\n```\n\n### ⚙️ Settings Page \n\nThe `settings.html` file has been updated to include fields for username and password. You can access the settings page at `http://localhost:5560/settings` to update the database configuration.\n\n## 🛠️ Installation and Setup \n\n### 📋 Requirements \n- Python 3.10+\n- MongoDB (local installation or remote access)\n- Modern web browser with JavaScript enabled\n\n### 🚀 Installation Steps \n\n1. Clone the repository\n   ```sh\n   git clone https://github.com/SchBenedikt/search-engine.git\n   cd search-engine\n   ```\n\n2. Create and activate a virtual environment (optional but recommended)\n   ```sh\n   python -m venv venv\n   # On Windows\n   venv\\Scripts\\activate\n   # On macOS/Linux\n   source venv/bin/activate\n   ```\n\n3. Install dependencies\n   ```sh\n   pip install -r requirements.txt\n   ```\n\n4. Configure your database\n   - Update the `db_config.json` with your MongoDB credentials\n   - Ensure MongoDB is running and accessible\n\n5. Start the application\n   ```sh\n   python3 app.py\n   ```\n\n6. Open your browser and navigate to `http://localhost:5560`\n\n## 📖 Usage Guide \n\n### 🔍 Basic Search \n1. Enter your query in the search box on the homepage\n2. Press Enter or click the search button\n3. View the search results, including AI-powered answers and knowledge panels\n\n### ⚙️ Advanced Features \n- **AI Assistance**: Prefix your query with \"Ask AI:\" to get more detailed AI-generated answers\n- **Filter Results**: Use the filter options on the search results page to refine your search\n- **Dark Mode**: Toggle dark mode in the settings or let it automatically adjust based on your system preferences\n- **Settings Customization**: Visit the settings page to customize your search experience\n\n\n## 🤝 Contributing \n\nContributions are welcome! Please feel free to submit a Pull Request.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fschbenedikt%2Fsearch-engine","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fschbenedikt%2Fsearch-engine","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fschbenedikt%2Fsearch-engine/lists"}