cemayan / searchengine

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Search Engine

Introduction

Search engine is example project of search engine implementation for frontend.

This project includes below:

  • Trie implementation
  • Google scraper
  • Helm chart for deployment
  • Basic web app

arch

Requirements

Usage

You can check out open api specs:

ReadApi WriteApi
OpenAPI read-api write-api

For development environment:

make dev-run

Default Endpoints for microservices:

ReadApi WriteApi Web App
Endpoint http://localhost:8087 http://localhost:8088 http://localhost:5173

For k8s environment:

make k8s

Default Endpoints for microservices:

ReadApi WriteApi Web App
Endpoint http://readapi.local http://writeapi.local http://app.local

You can start with add those endpoints to /etc/hosts file


In order to connect scraper microservice you should use grpc connection.

Usage with evans:

 evans --proto protos/searchreq/searchreq.proto --host localhost --port 50076

After that you need to type

call SearchHandler

Thus, you can connect with scraper. (If you type Alan Turing here, scraper microservice will be started to search with whole combinations that you give)

Since redis-mock doesn't have ExpectJsonGet and ExpectJsonSet, related tests will be written later

About

License:MIT License


Languages

Language:Go 55.0%Language:TypeScript 25.5%Language:Smarty 8.5%Language:Shell 4.7%Language:Makefile 3.3%Language:Dockerfile 1.7%Language:HTML 0.8%Language:JavaScript 0.5%Language:CSS 0.1%