DeepSearch is an LLM (Large Language Model) powered search engine application that allows users to search for information from various sources. This project was created using a backend developed with the GoFiber framework, a Svelte-based frontend, and a PostgreSQL database. It also offers a rich user interface with modern tools like Tailwind CSS.
Clone the Repository:
git clone https://github.com/username/deepsearch.git
cd deepsearch
Install Backend Dependencies:
go mod tidy
Install Frontend Dependencies:
cd web
npm install
Set Up the Database:
Create a database in PostgreSQL and update the dsn
value in the config/server.ini
file:
[db]
dsn="postgresql://user:password@localhost:5432/deepsearch"
Set Up Search Engine and LLM API Keys:
Fill in the key
and gemini
fields in the config/search.ini
file:
[serpapi]
key = "YOUR_SERPAPI_KEY"
[ai]
gemini = "YOUR_LLM_API_KEY"
Run the Backend:
go run main.go
Run the Frontend:
cd web
npm run dev
Open the Application:
Go to http://localhost:3000
in your browser.
server.ini
Contains API and database settings:
[api]
port = ":3000"
[db]
dsn = "postgresql://user:password@localhost:5432/deepsearch"
search.ini
Contains search engine and LLM settings:
[serpapi]
key = "YOUR_SERPAPI_KEY"
google = true
yandex = true
bing = true
[ai]
gemini = "YOUR_GEMINI_API_KEY"
prompt = "Based on the data here, I want you to extract a summary and analyze it..."
If you want to contribute, please submit a pull request or open an issue. All contributions are welcome!
If you like this project, please support it by giving it a ⭐! 😊