cheeaun / cheeaun/phanpy

Feature Request: local search

Open
#303 0 comments 0 reactions 0 assignees View on GitHub
enhancement need-research
Dominant language
JavaScript
Stars
1.5k
Forks
186
Avg merge
1d 36m
Merged PRs (30d)
11

Description

One thing that bugs me about Mastodon is its lack of good search. I can't find my own posts, much less posts in my timeline from others that are even a day or two old. In theory this all got better with the recent server release which better supports search. But in practice it's not working for me.

It strikes me Phanpy would be a pretty great search application. All it would need is a search UI and a local browser-hosted store of old posts. Which is a lot of work, and fairly far outside what Mastodon clients normally do. Feel free to just close this issue with "out of scope". But wouldn't it be cool?

FWIW [Meow](https://purr.neocities.org/posts/?n=1) is the best browser-local search engine for Mastodon I've tried. You feed the webapp a copy of your Mastodon post archive once and it stores it locally. Then searches are very easy. It only allows for searching your own posts (or anything you have an archive for), not general posts.

One way Phanpy could do search relatively easy is for the PWA to keep a copy of every post it sees as you use it. So at first it has no history to search but after several weeks of use it builds up a significant archive. IndexedDB is a good browser database for storing stuff long term like this, or rather some wrapper library on top of it.

A second option with Phanpy would be to let users upload an archive, just like Meow does. That is a manual process but would work well for searching your own posts.

(Every time anyone talks about search and Mastodon people get anxious about privacy questions. I'm proposing a local search only, in my own browser, and only of items I have already read.)

Contributor guide

No contributing guide indexed for this repository

Research direction

No files or tests are named. First clarify whether the project wants a local archive built from viewed posts, uploaded archives, or neither, then identify the PWA's search UI and browser-storage entry points; done would mean a defined local-only search scope, privacy behavior, and supported archive or history flow.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
frontend, search
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.