Alternative front-end for GitHub written with Go.
Find a file
aryak dd4430beef
All checks were successful
ci/woodpecker/cron/dockerize-dev Pipeline was successful
ci/woodpecker/cron/dockerize Pipeline was successful
ci/woodpecker/cron/instancejson Pipeline was successful
Update .woodpecker/instancejson.yml
2024-08-22 14:13:51 +00:00
.gitea/ISSUE_TEMPLATE Add h3 instead of bold to issues. 2023-06-07 17:56:14 +01:00
.woodpecker Update .woodpecker/instancejson.yml 2024-08-22 14:13:51 +00:00
cmd/gothub Fixed bug in setup script (#119) 2023-06-06 16:05:05 +00:00
pages Fixed directory view for folders which are not the repository's root. 2024-07-18 19:24:13 +09:30
public Merge branch 'dev' of codeberg.org:gothub/gothub into dev 2023-06-18 10:58:44 +01:00
serve add diff file download 2023-07-23 13:16:39 +05:30
utils specify branch using ldflag (closes #63) 2023-04-28 22:38:04 +05:30
views Fixed directory view for folders which are not the repository's root. 2024-07-18 19:24:13 +09:30
.editorconfig Add .editorconfig for yml files 2023-02-10 20:13:40 +01:00
.gitignore The Instance Owner Update 2023-04-01 18:53:44 +02:00
compose.yml add support for disabling proxying (#94) 2023-05-16 12:42:17 +00:00
Dockerfile checkout correct branch in dockerfile 2023-06-03 17:24:33 +08:00
DockerfileDev checkout correct branch in dockerfile 2023-06-03 17:24:33 +08:00
go.mod bump go version to 1.20 since requests lib needs it 2023-06-03 01:01:52 +08:00
go.sum move to scraping readme for dirview and fileview as well 2023-04-27 18:27:44 +05:30
LICENSE Initial commit 2022-10-24 14:24:32 +02:00
main.go Initial cmd. 2022-12-03 13:40:03 +01:00
README.md Fix instance location of projectsegfault 2024-04-13 09:44:48 +00:00

GotHub

GotHub is looking for new maintainers. If you are interested, please checkout #131.

Alternative front-end for GitHub written with Go. (WIP)

Matrix Go Report Card Website

Features

  • Lightweight - for both you and the instance host
  • No JavaScript - pure HTML and CSS goodness
  • No requests made to GitHub from the client side - they won't even know you made a request!
  • Open source - for peer review & trustworthiness
  • Save bandwidth - no JavaScript/tracking bloat loaded!

Comparison to GitHub

Tested with PageSpeed Insights. Using ansible/ansible as a test repo.

GotHub GitHub
Performance 100 81
Requests 3 88
Resource Size 8kb 629kb
Time to Interactive 0.9s 2.7s

Quite the difference, isn't it?

Instances

Difference between branches

The master branch runs on the master branch of GotHub. This means that the instance is running a stable, tested version of GotHub that doesn't get updated as much as dev. Doesn't mean they're bad, though.

dev instances run on the dev branch of GotHub. This might mean they are more up-to-date than other instances, but at the same time, they might not be (instance admin might not always update their instance, no auto-updates etc.). You can get the latest and greatest straight out of Git, but you could meet on bugs and other nasty things.

Link Tor Cloudflare Country ISP Branch
gh.bloatcat.tk No No Iceland 1984 master
gothub.frontendfriendly.xyz No No USA Hetzner master
gothub.hyperreal.coffee No No USA Linode master
gothub.lunar.icu No No Germany Avoro master
gothub.no-logs.com No No Sweden Vultr master
g.opnxng.com No No Singapore Vultr master
gh.owo.si Yes No Germany Contabo master
gothub.projectsegfau.lt Yes No GeoDNS (Germany/USA/India) Avoro/Racknerd/Airtel master
gh.whateveritworks.org No No Germany Hetzner master
gothub.r4fo.com Yes No Netherlands Oracle master
gothub.dev.projectsegfau.lt Yes No India Airtel dev
gh.phreedom.club No No Iceland Flokinet dev
gothub.ducks.party No No Netherlands Timeweb dev

Have an instance you want on the list? Make an issue or PR!

You can find a json-list of the same in gothub/gothub-instances.

Instance rules

These are the rules an instance must follow to be in our official instance list.

Most of these rules have been copied from the invidious project.

  • Instance MUST have been updated in the last month.
  • Instances using any EXTERNAL DDoS Protection / MITM / Anti-Bot protection MUST be marked as such.
  • Instances MUST NOT use any sort of web analytics
  • Instances MUST NOT serve ads
  • Instances MUST NOT restrict or disallow the access / usage to any natural person (eg. a country's IP range MUST NOT be blocked, access by a natural person MUST NOT be disallowed for arbirary reason) - this rule doesn't apply to juridical persons.

These rules may change at any time, we will inform the current hosters in the list, and give them 2 weeks so they can correct it

Setup

See gothub.app/docs for information about setting up GotHub.

Scraping

GotHub utilizes scraping powered by Colly to retrieve information from GitHub for everything except the explore page. By default, GotHub uses Chrome on Windows 10 as the user agent, but you can change it by setting the GOTHUB_USER_AGENT environment variable.

Funding

Our domain gothub.app is funded by the Project Segfault team, which is our only expense other than blood, sweat and tears. So, if you'd like to donate to GotHub, you can donate it to your favourite instance host or Project Segfault.

All content shown on a GotHub instance is from GitHub. Any issues with content shown on a GotHub instance need to be reported to GitHub, not the instance host's internet or domain provider.

GitHub is a registered trademark of GitHub, Inc. GotHub is not affiliated with GitHub, Inc.