{"id":40776456,"url":"https://github.com/matsu-chara/gol","last_synced_at":"2026-01-21T19:11:24.201Z","repository":{"id":57523562,"uuid":"95275577","full_name":"matsu-chara/gol","owner":"matsu-chara","description":"gol(go link) is a url shortner that run in cli and browser.","archived":false,"fork":false,"pushed_at":"2019-03-19T05:50:22.000Z","size":414,"stargazers_count":9,"open_issues_count":1,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-06-20T00:57:19.840Z","etag":null,"topics":["jump","link"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/matsu-chara.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-06-24T04:26:35.000Z","updated_at":"2024-02-09T06:50:04.000Z","dependencies_parsed_at":"2022-08-28T11:12:32.594Z","dependency_job_id":null,"html_url":"https://github.com/matsu-chara/gol","commit_stats":null,"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"purl":"pkg:github/matsu-chara/gol","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/matsu-chara%2Fgol","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/matsu-chara%2Fgol/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/matsu-chara%2Fgol/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/matsu-chara%2Fgol/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/matsu-chara","download_url":"https://codeload.github.com/matsu-chara/gol/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/matsu-chara%2Fgol/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28640506,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-21T18:04:35.752Z","status":"ssl_error","status_checked_at":"2026-01-21T18:03:55.054Z","response_time":86,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["jump","link"],"created_at":"2026-01-21T19:11:23.270Z","updated_at":"2026-01-21T19:11:24.196Z","avatar_url":"https://github.com/matsu-chara.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# gol\n\ngol(go link) is a url shortner that run in cli and browser.\n\n[![Build Status](https://travis-ci.org/matsu-chara/gol.svg?branch=master)](https://travis-ci.org/matsu-chara/gol)\n[![Go Report Card](https://goreportcard.com/badge/github.com/matsu-chara/gol)](https://goreportcard.com/report/github.com/matsu-chara/gol)\n\n![sample/ui.png](sample/ui.png)\n\n## Install\n\nTo install, use `go get` or [dockerhub](https://hub.docker.com/r/matsuchara/gol/)\n\n```bash\n$ go get github.com/matsu-chara/gol\n```\n\n## Usage\n\nyou can use gol as a server or cli\n\n### server\n\n```bash\n# run server at localhost:5656\n$ gol server\n\n# or run in background and restart always\n$ docker-compose up -d\n```\n\n`http://localhost:5656/` will show link list and some form for registering or deleting.\n\n#### API\n\n##### dump\n\naccess `http://localhost:5656/api/dump` dumps all links.\n\n![sample/gol_chrome1.png](sample/gol_chrome1.png)\n\n##### get\n\naccess `http://localhost:5656/${key}` will return redirect response destinating to the `${value}`\n\n##### put\n\n`curl -X PUT -d value=${some_url} http://localhost:5656/${key}\"` will add a link to key\n\n`curl -X PUT -d \"value=${some_url}\u0026force=true\" http://localhost:5656/${key}` will add a link to key (if replace key when conflict)\n\n`curl -X PUT -d \"value=${some_url}\u0026registeredBy=bar\" http://localhost:5656/${key}` will add a link to key with a registeredBy \"bar\".\n\n##### delete\n\n`curl -X DELETE http://localhost:5656/${key}` delete a link\n\n`curl -X DELETE http://localhost:5656/${key}?registeredBy=bar` delete a link which have registerdBy=bar. (if registeredBy is not equal to the server data, request will fail.)\n\n#### setting chrome\n\nOpen Chrome \u003e Preference \u003e add Search Engine \u003e add below\n\n```\n- name: gol\n- keyword: gol\n- query: http://localhost:5656/%s\n```\n\nthen, you can open gol links by\nclick url bar \u003e type 'gol' \u003e tab \u003e type key \u003e enter\n\ntype `gol` \u003e  tab \u003e type key\n![sample/gol_chrome2.png](sample/gol_chrome2.png)\n\nthen enter \u003e jump to the link\n![sample/gol_chrome3.png](sample/gol_chrome3.png)\n\n\nAs a further advanced usage, you can set custom name space.\n\nexample 1. env specific links.\n\n```\n- name: gop\n- keyword: gop\n- query: http://localhost:5656/production_%s\n```\n\nexample 2. my original links. (prevent contamination of the global namespace)\n\n```\n- name: gom\n- keyword: gom\n- query: http://localhost:5656/matsu_chara_%s\n```\n\n### in cli\n\n![sample/gol_cli.gif](sample/gol_cli.gif)\n\n#### usage\n\n```bash\n$ gol add confluence https://confluence.nice-company.com\n$ gol add myproduct https://github.nice-company.com/myteam/myproduct\n$ gol add myteamdocs https://confluence.nice-company.com/pages/viewpage.action?pageId=xxxxxxx\n$ gol add jenkins_dev https://dev.jenkins.nice-company.com/\n$ gol add jenkins_prod https://dev.jenkins.nice-company.com/\n$ gol add consul_prod https://our-server01:8500/\n$ gol add myproduct_admin_prod https://our-server02:9534\n\n$ gol ls\nconfluence: https://confluence.nice-company.com\nconsul_prod: https://our-server01:8500/\njenkins_dev: https://dev.jenkins.nice-company.com/\njenkins_prod: https://dev.jenkins.nice-company.com/\nmyproduct: https://github.nice-company.com/myteam/myproduct\nmyproduct_admin_prod: https://our-server02:9534\nmyteamdocs: https://confluence.nice-company.com/pages/viewpage.action?pageId=xxxxxxx\n\n$ gol get jenkins_dev\nhttps://dev.jenkins.nice-company.com/\n\n$ gol rm consul_prod\n$ gol get consul_prod\n```\n\n#### zsh completion\n\nhttps://gist.github.com/3tty0n/0ef541bb9fce758c4c064ce96ba83a91\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmatsu-chara%2Fgol","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmatsu-chara%2Fgol","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmatsu-chara%2Fgol/lists"}