nextcloud / nextcloud/fulltextsearch

Crawling &Indexing content from external website

Open
#665 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
PHP
Stars
234
Forks
64
Avg merge
6h 18m
Merged PRs (30d)
10

Description

Notes:

  • This will be managed by a specific app,
  • Website/Page will be identified by Sitemap,
  • Crawling of a sub-page will be based on a local configuration regarding the allowed numbers of hop if the linked page is hosted locally (same domain), on a different subdomain, or on a completely different domains,
  • External content have no id within Nextcloud's database, also the crawling of a single address can returns multiple document.

Tasks:

  • Allowing an app to directly reach the used Search Platform (fulltextsearch_elasticsearch) without passing through the FullTextSearch index table (core)
  • Crawling website and sub-pages (app),
  • Extracting content and meta-data for each page (app),
  • indexing content and meta-data (app),
  • Searching and Advanced Searching within content and metadata (core+app),
  • Result should link to the right page (app, might need some work in core to force opening on a different tab)

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue names no files or tests; begin by tracing the core FullTextSearch index-table path and the fulltextsearch_elasticsearch platform, then identify the app entry points for sitemap crawling. Done means external pages and sub-pages are crawled, content and metadata are indexed and searchable, and results link to the correct page.

Written by the indexing model from the issue text.

Assessment

Tech stack
elasticsearch, php
Domain
backend, search
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
15/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.