Skip to content

Commit

Permalink
Add Blogsearch into the product list (#24)
Browse files Browse the repository at this point in the history
  • Loading branch information
mincong-h authored Aug 15, 2024
1 parent 0ef7e96 commit 0cd511d
Show file tree
Hide file tree
Showing 5 changed files with 53 additions and 9 deletions.
16 changes: 8 additions & 8 deletions _data/navigation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,14 @@ header:
en : /chatgpt/
zh : /cn/chatgpt/

- titles:
en : &EN Blogsearch
zh-Hans : &ZH_HANS 博客搜索
zh : *ZH_HANS
urls:
en : /blogsearch/
zh : /cn/blogsearch/

- titles:
en : &EN Training
zh-Hans : &ZH_HANS 培训
Expand All @@ -36,14 +44,6 @@ header:
en : /training/
zh : /cn/training/

# - titles:
# en : &EN BlogSearch
# zh-Hans : &ZH_HANS 博客搜索
# zh : *ZH_HANS
# urls:
# en : /en/blogsearch/
# zh : /cn/blogsearch/

- titles:
# @start locale config
en : &EN Archive
Expand Down
Binary file added assets/2024-08-15-blogsearch-demo.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/2024-08-15-blogsearch-demo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
37 changes: 37 additions & 0 deletions blogsearch/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
---
layout: article
title: Blogsearch
show_title: true
subtitle: >
Searching blog posts in Jekyll, a popular static website generation.
image: /assets/patterns/pawel-czerwinski-fPN1w7bIuNU-unsplash.jpg
cover: /assets/patterns/pawel-czerwinski-fPN1w7bIuNU-unsplash.jpg
article_header:
type: overlay
theme: dark
background_color: "#203028"
background_image:
gradient: "linear-gradient(135deg, rgba(0, 0, 0, .6), rgba(0, 0, 0, .4))"
---

{% comment %}
The target readers are prospects who want to hire me as a freelancer to implement similar solutions in Elasticsearch.
{% endcomment %}

## Overview

[Blogsearch](https://bs.nanosearch.io) is a simple site search solution for websites built on top of the popular blog engine [Jekyll](https://jekyllrb.com/) and the Jekyll TeXt Theme. It is currently used by 3 websites for searching blog posts: <https://mincong.io>, <https://nanosearch.io>, and <https://jingwen-z.github.io>. It is built on top of Java and Elasticsearch.

![Blogsearch demo](/assets/2024-08-15-blogsearch-demo.gif)

## Core Components

Blogsearch contains multiple components: a web component in the client's website, a Jekyll plugin for indexing blog posts during content generation, a backend service, and the underlying infrastructure.

* For the web component, Blogsearch uses JavaScript to search the articles using UI, modified from the existing search bar of the Jekyll TeXt Theme. A new query is sent to the backend for each character entered into the search bar.
* For the Jekyll plugin, Blogsearch uses a Ruby plugin to reach the metadata of each blog post, including the title and the content, and send them to the backend API for indexing. The credentials are stored in GitHub secrets.
* For the backend service, Blogsearch uses Java RESTful APIs. The API is generated by OpenAPI.
* For the infrastructure, Blogsearch uses AWS Elastic Container Service (ECS) as the orchestration platform. The data are stored in Elastic Cloud and Mongo Atlas.

You can find more details in this [blog post](https://mincong.io/en/blogsearch-architecture/) about the architecture of Blogsearch.
9 changes: 8 additions & 1 deletion index.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,4 +30,11 @@ Nanosearch is an online service that provides instant search solutions, which al

![highlight results](/assets/2024-04-24-search-bar-results.png)

ChatGPT QuickSearch Extension is a browser extension that allows users to quickly search the conversation history directly in ChatGPT. Users can simply press <kbd>cmd</kbd> / <kbd>ctrl</kbd> + <kbd>K</kbd> to trigger it. This product is currently in alpha testing. See more details on the product page: <{{ site.url }}/chatgpt/>
ChatGPT QuickSearch Extension is a browser extension that allows users to quickly search the conversation history directly in ChatGPT. Users can simply press <kbd>cmd</kbd> / <kbd>ctrl</kbd> + <kbd>K</kbd> to trigger it. This product is currently in alpha testing. See more details on the product page [here](/chatgpt/).

## Blogsearch

![blogsearch demo](/assets/2024-08-15-blogsearch-demo.png)

[Blogsearch](https://bs.nanosearch.io) is a simple site search solution for websites built on top of the popular blog engine [Jekyll](https://jekyllrb.com/) and the Jekyll TeXt Theme. It is currently used by 3 websites for searching blog posts. It is built on top of Java and Elasticsearch. See more details on the product page [here](/blogsearch/).

0 comments on commit 0cd511d

Please sign in to comment.