Giter Site home page Giter Site logo

kawamataryo / chikamichi Goto Github PK

View Code? Open in Web Editor NEW
273.0 273.0 22.0 3.11 MB

Command pallet for the browser. Enables fuzzy search for histories, tabs and bookmarks.

Home Page: https://chrome.google.com/webstore/detail/chikamichi/gkhobepjbiepngbeikhbpnfgjcjgmgha?hl=ja&authuser=1

License: MIT License

TypeScript 68.23% HTML 0.22% Vue 30.70% CSS 0.79% Shell 0.05%
browser-extension chrome-extension firefox-addon webextension

chikamichi's Introduction

Chikamichi - Quickly find a page

Chrome web store version Chrome web store rating Chrome Web Store users CI:UT CI:E2E

Chikamichi - Chrome extension that enables fuzzy search for anything | Product Hunt

Chikamichi is an extension that makes navigating pages in Chrome or Firefox very easy. You can search and navigate across your browser history, bookmarks and tabs. Simple shortcuts and a simple interface make it easy to use.

Inspired by the Sidekick search dialogue. The Japanese meaning of chikamichi is shorter way.

✨ Features

  • ⚡️ Fuzzy search your browsing history and bookmark and tab. powered by Fuse.js
  • 🔐 All processing is done within the browser. No history data will be sent to the any server.

🎬 Demo

My.Movie.1.mp4

📦 Install

Please install from:

💻 Usage

Shortcuts

shortcut action
Alt + k Open search dialog
or (Ctrl + n or Ctrl + p) Select history
Enter Open the selected url
Ctrl + Enter Open the selected url in new tab
Ctrl + f Add favorite
Ctrl + c Copy URL to the clipboard

Search commands

commands action
/h Search only histories
/b Search only bookmarks
/t Search only tabs

Favorite

Items with a star to the right of the search item are registered as favorites. Items registered as favorites will be displayed in the initial view. However, if a search prefix has been set, the search prefix will take precedence.

👨‍💻 Contributing

Contributions are welcome 🎉 We accept contributions via Pull Requests.

See this guide on how to make a contribution.

💕 Thanks

This extension uses the following library.

chikamichi's People

Contributors

ademking avatar gitoffthelawn avatar ikumatadokoro avatar kawamataryo avatar louisgv avatar merlin04 avatar mizdra avatar redshoga avatar renovate-bot avatar renovate[bot] avatar turara avatar yamash723 avatar yktakaha4 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

chikamichi's Issues

Slow writing

I understand the extension need search-time, especially when there are a lot of tabs. However, instead of just waiting to show me the results, the extension slows down the input bar, and so each character appears slowly.

I have a powerful desktop computer.
Browser Firefox 99.0 on Windows 10
Extension version: 2.14.2

Add shortcut to open multiple tabs while keeping the chikamichi window open

Thank you for providing a great tool.I have one feature suggestion.

Feature Proposal

I would like a shortcut to open multiple tabs while keeping the chikamichi window open.

Purpose

I would like to be able to do the following steps when there are multiple URLs to search for a site in chikamichi.

  1. open chikamichi
  2. perform a search and find two or more candidate URLs.
  3. use the shortcut "Ctrl+Shift+Click" to display the search results in a separate tab. (The chikamichi window is not closed at this time)
  4. the chikamichi window still shows the search results from step 2.

Background

When multiple candidate sites were found, I wondered if there was an operation procedure that did not close the chikamichi window, since it was necessary to perform a search each time a click was made.

If this feature suggestion is good, let me make a PR.

Enable HMR in development

Due to the impact of supporting manifest v3, HMR doesn't work in development.
It is a hassle to have to pnpm build each time. I want to do something about it.

Here's one that might be helpful

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

Rate-Limited

These updates are currently rate-limited. Click on a checkbox below to force their creation now.

  • chore(deps): update dependency @iconify/json to v2.2.188
  • chore(deps): update dependency @types/chrome to v0.0.262
  • chore(deps): update dependency @types/node to v20.11.24
  • chore(deps): update dependency @vitejs/plugin-vue to v5.0.4
  • chore(deps): update dependency cypress to v13.6.6
  • chore(deps): update dependency husky to v9.0.11
  • chore(deps): update dependency tsup to v8.0.2
  • chore(deps): update vue monorepo to v3.4.21 (@vue/compiler-sfc, vue)
  • fix(deps): update dependency vue-word-highlighter to v1.2.4
  • chore(deps): update dependency @ngneat/falso to v7.2.0
  • chore(deps): update dependency @vueuse/core to v10.9.0
  • chore(deps): update dependency eslint to v8.57.0
  • chore(deps): update dependency nodemon to v3.1.0
  • chore(deps): update dependency terser to v5.28.1
  • chore(deps): update dependency vite to v5.1.4
  • chore(deps): update dependency @typescript-eslint/eslint-plugin to v7
  • chore(deps): update pnpm/action-setup action to v3
  • 🔐 Create all rate-limited PRs at once 🔐

Open

These updates have all been created already. Click a checkbox below to force a retry/rebase of any.

Detected dependencies

github-actions
.github/workflows/cypress-test.yaml
  • actions/checkout v4
  • actions/cache v4
  • pnpm/action-setup v2.4.0
  • actions/setup-node v4
  • cypress-io/github-action v4
  • actions/upload-artifact v4
  • actions/upload-artifact v4
.github/workflows/submit.yaml
  • actions/checkout v4
  • actions/cache v4
  • pnpm/action-setup v2.4.0
  • actions/setup-node v4
  • PlasmoHQ/bpp v2
.github/workflows/test.yaml
  • actions/checkout v4
  • actions/cache v4
  • pnpm/action-setup v2.4.0
  • actions/setup-node v4
npm
package.json
  • parse-domain 8.0.1
  • vue-word-highlighter 1.2.3
  • @antfu/eslint-config 2.6.4
  • @ffflorian/jszip-cli 3.6.2
  • @iconify/json 2.2.180
  • @ngneat/falso 7.1.1
  • @types/chrome 0.0.260
  • @types/fs-extra 11.0.4
  • @types/lodash.debounce 4.0.9
  • @types/node 20.11.16
  • @types/webextension-polyfill 0.10.7
  • @typescript-eslint/eslint-plugin 6.21.0
  • @vitejs/plugin-vue 5.0.3
  • @vue/compiler-sfc 3.4.15
  • @vueuse/core 10.7.2
  • chokidar 3.5.3
  • cross-env 7.0.3
  • crx 5.0.1
  • cypress 13.6.4
  • eslint 8.56.0
  • eslint-config-prettier 9.1.0
  • esno 4.0.0
  • fs-extra 11.2.0
  • fuse.js 7.0.0
  • husky 9.0.10
  • kolorist 1.8.0
  • lint-staged 15.2.2
  • lodash.debounce 4.0.8
  • npm-run-all2 6.1.2
  • prettier 3.2.5
  • rimraf 5.0.5
  • serve 14.2.1
  • terser 5.27.0
  • typescript 5.3.3
  • unplugin-auto-import 0.17.5
  • unplugin-icons 0.18.5
  • unplugin-vue-components 0.26.0
  • vite 5.0.12
  • vite-plugin-windicss 1.9.3
  • vitest 0.25.6
  • vue 3.4.15
  • vue-demi 0.14.7
  • web-ext 7.11.0
  • webext-bridge 5.0.5
  • webextension-polyfill 0.10.0
  • nodemon ^3.0.0
  • tsup 8.0.1

  • Check this box to trigger a request for Renovate to run again on this repository

feat: Search priority/sorting

Currently, results are messy, will be nice to have the option to set search priority and sort.

image

for example, want to tab be on top of options.

Cannot distinguish page titles with a common prefix

Hi!
I like the concept very much, but I have a problem in use.

Problem

Page titles can have a common prefix, such as, its service name, a user name, a project name, etc. I cannot distinguish such pages as follows in many cases...

  • long long project name | a https...
  • long long project name | b https...
  • ...

I hope I can see much longer titles like the address bar!

Possible solutions

  • Make the popup wider
  • Make width of the popup configurable
    • I apologize that I don't know the limit of the popup size. You have already maximized it 🙇
  • Make titles longer and make urls shorter
  • ...

dev error

root@eeb563c53ad9:/chikamichi# pnpm i --registry=https://registry.npmmirror.com
Downloading registry.npmmirror.com/typescript/5.3.3: 5.76 MB/5.76 MB, done
Downloading registry.npmmirror.com/@iconify/json/2.2.174: 70.03 MB/70.03 MB, done
 WARN  4 deprecated subdependencies found: [email protected], [email protected], [email protected], [email protected]
Packages: +997
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Progress: resolved 1051, reused 0, downloaded 996, added 997, done
node_modules/.pnpm/[email protected]/node_modules/dtrace-provider: Running install script, done in 1.6s
node_modules/.pnpm/[email protected][email protected]/node_modules/vue-demi: Running postinstall script, done in 294ms
node_modules/.pnpm/[email protected]/node_modules/spawn-sync: Running postinstall script, done in 178ms
node_modules/.pnpm/[email protected]/node_modules/core-js: Running postinstall script, done in 185ms
node_modules/.pnpm/[email protected][email protected]/node_modules/vue-demi: Running postinstall script, done in 248ms
node_modules/.pnpm/[email protected]/node_modules/esbuild: Running postinstall script, done in 115ms
node_modules/.pnpm/[email protected]/node_modules/esbuild: Running postinstall script, done in 5.5s
node_modules/.pnpm/[email protected]/node_modules/cypress: Running postinstall script, done in 1m 25s

> [email protected] prepare /chikamichi
> husky install

install command is deprecated

dependencies:
+ parse-domain 8.0.1
+ vue-word-highlighter 1.2.3

devDependencies:
+ @antfu/eslint-config 2.6.3
+ @ffflorian/jszip-cli 3.6.2
+ @iconify/json 2.2.174
+ @ngneat/falso 7.1.1
+ @types/chrome 0.0.259
+ @types/fs-extra 11.0.4
+ @types/lodash.debounce 4.0.9
+ @types/node 20.11.6
+ @types/webextension-polyfill 0.10.7
+ @typescript-eslint/eslint-plugin 6.19.1
+ @vitejs/plugin-vue 5.0.3
+ @vue/compiler-sfc 3.4.15
+ @vueuse/core 10.7.2
+ chokidar 3.5.3
+ cross-env 7.0.3
+ crx 5.0.1
+ cypress 13.6.3
+ eslint 8.56.0
+ eslint-config-prettier 9.1.0
+ esno 4.0.0
+ fs-extra 11.2.0
+ fuse.js 7.0.0
+ husky 9.0.5
+ kolorist 1.8.0
+ lint-staged 15.2.0
+ lodash.debounce 4.0.8
+ nodemon 3.0.2
+ npm-run-all 4.1.5
+ prettier 3.2.4
+ rimraf 5.0.5
+ serve 14.2.1
+ terser 5.27.0
+ tsup 8.0.1
+ typescript 5.3.3
+ unplugin-auto-import 0.17.5
+ unplugin-icons 0.18.2
+ unplugin-vue-components 0.26.0
+ vite 5.0.12
+ vite-plugin-windicss 1.9.3
+ vitest 0.25.6
+ vue 3.4.15
+ vue-demi 0.14.6
+ web-ext 7.11.0
+ webext-bridge 5.0.5
+ webextension-polyfill 0.10.0

 WARN  Issues with peer dependencies found
.
└─┬ web-ext 7.11.0
  └─┬ addons-linter 6.21.0
    └─┬ addons-scanner-utils 9.9.0
      └── ✕ unmet peer [email protected]: found 3.3.1 in web-ext

Done in 2m 44.8s
root@eeb563c53ad9:/chikamichi# pnpm run dev

> [email protected] dev /chikamichi
> npm run clear && cross-env NODE_ENV=development run-p dev:*


> [email protected] clear
> rimraf extension extension.*


> [email protected] dev:bg /chikamichi
> tsup --watch ./src


> [email protected] dev:prepare /chikamichi
> esno scripts/prepare.ts


> [email protected] dev:web /chikamichi
> vite

The CJS build of Vite's Node API is deprecated. See https://vitejs.dev/guide/troubleshooting.html#vite-cjs-node-api-deprecated for more details.
CLI Building entry: {"background/index":"./src/background/index.ts","mv3client":"./scripts/client.ts"}
CLI Using tsconfig: tsconfig.json
CLI tsup v8.0.1
CLI Using tsup config: /chikamichi/tsup.config.ts
CLI Running in watch mode
CLI Target: esnext
ESM Build start
✘ [ERROR] Could not resolve "../node_modules/vite/src/client/overlay"

    scripts/client.ts:7:7:
      7 │ } from "../node_modules/vite/src/client/overlay";
        ╵        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

ESM Build failed
Error: Build failed with 1 error:
scripts/client.ts:7:7: ERROR: Could not resolve "../node_modules/vite/src/client/overlay"
    at failureErrorWithLog (/chikamichi/node_modules/.pnpm/[email protected]/node_modules/esbuild/lib/main.js:1650:15)
    at /chikamichi/node_modules/.pnpm/[email protected]/node_modules/esbuild/lib/main.js:1058:25
    at runOnEndCallbacks (/chikamichi/node_modules/.pnpm/[email protected]/node_modules/esbuild/lib/main.js:1485:45)
    at buildResponseToResult (/chikamichi/node_modules/.pnpm/[email protected]/node_modules/esbuild/lib/main.js:1056:7)
    at /chikamichi/node_modules/.pnpm/[email protected]/node_modules/esbuild/lib/main.js:1085:16
    at responseCallbacks.<computed> (/chikamichi/node_modules/.pnpm/[email protected]/node_modules/esbuild/lib/main.js:703:9)
    at handleIncomingPacket (/chikamichi/node_modules/.pnpm/[email protected]/node_modules/esbuild/lib/main.js:763:9)
    at Socket.readFromStdout (/chikamichi/node_modules/.pnpm/[email protected]/node_modules/esbuild/lib/main.js:679:7)
    at Socket.emit (node:events:518:28)
    at addChunk (node:internal/streams/readable:559:12)
 ELIFECYCLE  Command failed with exit code 1.
 ELIFECYCLE  Command failed.
 ELIFECYCLE  Command failed.
node:internal/errors:932
  const err = new Error(message);
              ^

Error: Command failed: npx esno ./scripts/manifest.ts
    at __node_internal_genericNodeError (node:internal/errors:932:15)
    at checkExecSyncError (node:child_process:890:11)
    at execSync (node:child_process:962:15)
    at writeManifest (/chikamichi/scripts/prepare.ts:28:3)
    at chokidar (/chikamichi/scripts/prepare.ts:33:1)
    at Object.<anonymous> (/chikamichi/scripts/prepare.ts:43:1)
    at Module._compile (node:internal/modules/cjs/loader:1376:14)
    at Object.S (/chikamichi/node_modules/.pnpm/[email protected]/node_modules/tsx/dist/cjs/index.cjs:1:1292)
    at Module.load (node:internal/modules/cjs/loader:1207:32)
    at Module._load (node:internal/modules/cjs/loader:1023:12) {
  status: null,
  signal: 'SIGTERM',
  output: [ null, null, null ],
  pid: 762,
  stdout: null,
  stderr: null
}

Node.js v20.11.0
ERROR: "dev:bg" exited with 1.
 ELIFECYCLE  Command failed with exit code 1.


Node.js v18.19.0   and v16.20.2
 ELIFECYCLE  Command failed.
ERROR: "dev:bg" exited with 1.
 ELIFECYCLE  Command failed with exit code 1.

11件以上の検索結果について

はじめまして、高橋と申します。

chikamichi、大変便利に使わさせていただいております!
11件目以降の検索結果が表示されないのは仕様でしょうか?また今後11件目以降を表示するように変更する予定はありますでしょうか?

Open in a new tab as a default

現在は

  • Enterだと今のタブで開く
  • ctrl+Enterだと新規タブで開く

という動作ですが,設定でこの設定をswapできるようにして欲しいです。

期待する動作

  • 設定項目:Open page in new ta as a default
    • off: Enterで現在のタブで開く,ctrl+Enter で新規タブで開く
    • on: Enterで新規タブで開く,ctrl+Enter で現在のタブで開く

Autocomplete in searchbar

First of all, keep up the good work! 👍

When using Google chrome, there is an autocomplete in the search bar... I think It's better to be turned off

image

No responses on the popup window

Hi!

I have this problem with the extension on chrome

Currently, I'm using:

  • Chrome v 97.0.4692.99
  • macOS BigSur v11.6.2

When I press opt + k the popup window opens, but it doesn't respond to any events, no click or keyboard search.

Screen.Recording.2022-01-31.at.12.32.40.mov

Sorting History and searches by most recent?

Love the extension, however I find it hard to find something in history, where I can only remember one word because it isn't sorted after access time.

Would be nice if you could sort it like that, and even better if you could add access time besides each entry. Otherwise, I prefer the inbuilt history browser.

Search results are not expected

Hi, thanks for the great tool.
However, I'm a bit confused about the search results.

It seems that the more I type, the worse results I get, which is quite counterintuitive to me.

I find you are using weighted search here:

keys: [
{
name: "title",
weight: 0.4,
},
{
name: "folderName",
weight: 0.3,
},
{
name: "url",
weight: 0.2,
},
{
name: "searchTerm",
weight: 0.1,
},
],

IIUC it requires relatively good matches for all keys, especially those with high weights.

So if I type the directory path + full title of an item, I will get a good match for the title but complete mismatches for other keys. As a result, the overall score is bad because there are several complete mismatches for other keys and the result that I expect actually gets removed!

Proposed Solution

Option 1

I see there is a searchTerm key with all searchable information. I think it would help with this issue but it has a low weight.

Option 2

Add an option for a different algorithm like https://github.com/ajitid/fzf-for-js

Thanks in advance!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.