aboutsummaryrefslogtreecommitdiff
path: root/README.md
blob: 2aef05aba94357e6ded1f6eccfe057481f6430c9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59

What is Githermit?

Githermit is a Git web interface with the purpose of being a way to show off your personal projects on your own hosted git server.

Why was it created?

For the sake of modernism. Projects like cgit, Gitweb & Stagit are written in decades-old programming languages that no one in their right mind would learn nowadays.

The goal of Githermit is to be an alternative to the aforementioned projects that is both easier to develop & easier to use. I would argue that Javascript, Vue.js & Sass is much easier to comprehend and understand than C, Perl & even PHP. Especially for less experienced developers.

It's also because i hate the idea of the web server being seperate. I don't want to have to set up Nginx or Apache or whatever for just hosting a Git web interface. Githermit requires no such thing. All the steps to get it set up are in Usage. Nothing more, nothing less.

What is Githermit Not?

Githermit is not and will never be an alternative to services such as Gitlab and Github.

Githermit will probably never be as fast as cgit, Gitweb & Stagit. But that's okay. That's not the point.

Progress

  • [x] Log & commit pages
  • [x] Cloning
  • [ ] Refs page
  • [ ] Tree page
  • [ ] Blob page
  • [ ] Markdown support
  • [ ] Tests

Usage

Dependencies: - Git (obviously) - Nodejs v14.16.0

Install all the dependencies npm install

Build & bundle the frontend npm run build

Create a file called settings.yml with following content

host: (host address)
port: (port)
title: (title of your Githermit instance)
about: (short description of your Githermit instance)
base_dir: (directory where all of your bare Git repositories are located)

You can now run it with npm start

Development

You're highly encouraged to create a merge request if you're willing to contribute.

You can run the following command to easily get started with contributing npm run dev

This will run an instance of Githermit with live-updating backend & frontend.