An open API service indexing awesome lists of open source software.

https://github.com/gustavomorinaga/google-like-search-engine

🔍 Simple search engine that mimics the Google search engine
https://github.com/gustavomorinaga/google-like-search-engine

gustavomorinaga search-engine shadcn-svelte sveltekit tailwindcss typescript

Last synced: 3 months ago
JSON representation

🔍 Simple search engine that mimics the Google search engine

Awesome Lists containing this project

README

          

# Google-Like Search Engine

🔍 Simple implementation of a Google-like search engine using [TypeScript](https://www.typescriptlang.org/) and [SvelteKit](https://kit.svelte.dev/).



License MIT


Made with SvelteKit


Made with TypeScript


Made with Tailwind

## 🌎 Translations

[English](./static/docs/translations/README.en.md)
[Português Brasileiro](./static/docs/translations/README.pt.md)

## Introduction

This project is a simple search engine that mimics the Google search engine.

The Google search engine is a very complex system, but I tried to make it as simple as possible. The app is based on a JSON file that contains the data of simple articles that are displayed on the page. The search engine must be able to search for articles by title, description, and content.

Cases that the search engine must be able to handle:

- Search for articles by title, description, and content.
- Use search operators to filter the results by:
- exact phrase (e.g., "hello world")
- any of the words (e.g., hello world)
- include keywords (e.g., +hello +world)
- exclude keywords (e.g., -hello -world)
- Register the number of results found.
- Register the time it took to perform the search.
- Highlight the keywords in the results.

## Tech Stack

| Tool/Service | Category | Description |
| ------------------------------------------------- | --------------------------- | ----------------------------------------------------------------------------------- |
| [Vite](https://vitejs.dev/) | Build Tools | A build tool that provides a faster development experience for modern web projects. |
| [CSSNANO](https://cssnano.co/) | CSS | A modular minifier, built on top of the PostCSS ecosystem. |
| [PostCSS](https://postcss.org) | CSS | A tool for transforming CSS with JavaScript. |
| [Tailwind CSS](https://tailwindcss.com/) | CSS | A utility-first CSS framework. |
| [ESLint](https://eslint.org/) | JavaScript/TypeScript Tools | A tool for identifying and reporting on patterns in ECMAScript/JavaScript code. |
| [Prettier](https://prettier.io/) | JavaScript/TypeScript Tools | An opinionated code formatter. |
| [TypeScript](https://www.typescriptlang.org/) | JavaScript/TypeScript Tools | A typed superset of JavaScript that compiles to plain JavaScript. |
| [shadcn-svelte](https://www.shadcn-svelte.com/) | UI Components | Accessible and customizable components that you can copy and paste into your apps. |
| [TanStack Virtual](https://tanstack.com/virtual/) | UI Components | Headless UI for Virtualizing Large Element Lists |
| [SvelteKit](https://kit.svelte.dev/) | Web Frameworks | A framework for building high-performance web apps. |

## 📜 License

This project is licensed under the **MIT License** - see the [LICENSE](LICENSE) page for details.


❤️ Thanks for your attention!