• Stars
    star
    657
  • Rank 68,589 (Top 2 %)
  • Language
    Python
  • License
    Other
  • Created over 13 years ago
  • Updated about 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

docker run klaus / pip install klaus — the first Git web viewer that Just Works™.

travis-badge Join the chat at https://gitter.im/jonashaag/klaus

klaus: a simple, easy-to-set-up Git web viewer that Just Works™.

(If it doesn't Just Work for you, please file a bug.)

  • Super easy to set up -- no configuration required
  • Syntax highlighting
  • Markdown + RestructuredText rendering support
  • Pull + push support (Git Smart HTTP)
  • Code navigation using Exuberant ctags
Demo:http://klausdemo.lophus.org
Mailing list:http://groups.google.com/group/klaus-users
On PyPI:http://pypi.python.org/pypi/klaus/
Wiki:https://github.com/jonashaag/klaus/wiki
License:ISC (BSD)

Running with Docker

The easiest way to get started. We maintain a Docker image that has syntax highlighting, Markdown rendering, code navigation, etc. pre-configured:

docker run -v /path/to/your/repos:/repos \
           -p 7777:80 \
           -it jonashaag/klaus:latest \
           klaus --host 0.0.0.0 --port 80 /repos/repo1 /repos/repo2 ...

(Replace /path/to/your/repos with the folder that contains your Git repositories on the Docker host. You can also pass in multiple -v arguments if your repos are in multiple folders on the host.)

Go to http://localhost:7777 on the Docker host et voilà!

The command line above simply runs the klaus script -- for usage details, see the "Using the klaus script" section below.

Local setup

pip install klaus

(Optional dependencies: see Markup rendering in the wiki.)

Usage

See also: Klaus wiki

Using the klaus script

NOTE: This is intended for testing/low-traffic local installations only! The klaus script uses wsgiref internally which doesn't scale at all (in fact it's single-threaded and non-asynchronous).

To run klaus using the default options:

# With Docker:
docker run ... jonashaag/klaus:latest klaus [repo1 [repo2 ...]]
# Local setup:
klaus [repo1 [repo2 ...]]

For more options, see:

 # With Docker:
docker run ... jonashaag/klaus:latest klaus --help
# Local setup:
klaus --help

Using a real server

The klaus module contains a make_app function which returns a WSGI app.

An example WSGI helper script is provided with klaus (see klaus/contrib/wsgi.py), configuration being read from environment variables. Use it like this (uWSGI example):

uwsgi -w klaus.contrib.wsgi \
      --env KLAUS_SITE_NAME="Klaus Demo" \
      --env KLAUS_REPOS="/path/to/repo1 /path/to/repo2 ..." \
      ...

Gunicorn example:

gunicorn --env KLAUS_SITE_NAME="Klaus Demo" \
         --env KLAUS_REPOS="/path/to/repo1 /path/to/repo2 ..." \
         klaus.contrib.wsgi

The Docker image also has uwsgi preinstalled:

docker run ... jonashaag/klaus:latest uwsgi ...

See also deployment section in the wiki.

Contributing

Please do it!

I'm equally happy with bug reports/feature ideas and code contributions. If you have any questions/issues, I'm happy to help!

For starters, here are a few ideas what to work on. :-)

img1 img2 img3

More Repositories

1

bjoern

A screamingly fast Python 2/3 WSGI server written in C.
C
2,993
star
2

RealRIRs

Python loaders for many Real Room Impulse Response databases
Python
76
star
3

prometheus-multiprocessing-example

Prometheus Gunicorn multiple worker processes integration example with Flask
Python
62
star
4

django-addanother

"Add another" buttons outside the Django admin
Python
49
star
5

audio-resampling-in-python

Comparison of Python audio resampling implementations
Jupyter Notebook
34
star
6

micromamba-pycharm

Use Micromamba environments in PyCharm
Python
30
star
7

content-security-policy-rules

List of Content Security Policy rules for all major cloud services
22
star
8

speech-enhancement

Collection of papers, datasets and tools on the topic of Speech Dereverberation and Speech Enhancement
Jupyter Notebook
19
star
9

pydct

Short-Time Discrete Cosine Transform (DCT) for Python. SciPy, TensorFlow and PyTorch implementations.
Jupyter Notebook
18
star
10

python-moc

[DISCONTINUED] a Python music on console interface. pip install moc.
Python
14
star
11

Nano

[DISCONTINUED] Nano WSGI Web Framework in ~100 Lines of Code
Python
12
star
12

speech-enhancement-comparison

Comparison of speech enhancement/denoising models
Python
12
star
13

deploy.py

[DISCONTINUED] Dead simple uWSGI + nginx + supervisord + tox deployment based on fabric.
Python
12
star
14

feed2mail

not-that-messy rss2email clone
Python
8
star
15

gpyconf

a modular Python configuration framework with support for multiple backends (ConfigParser, XML, JSON, ...) and multiple frontends (GTK+, Web, ...)
Python
8
star
16

django-ci

[DISCONTINUED] Continuous Integration for Django -- abandoned, feel free to fork
Python
7
star
17

django-indisposable

Disallow disposable email addresses in Django EmailField
Python
7
star
18

german-normalize

Python module to normalize ä ü ö ß -> a(e) u(e) o(e) ss (DIN 5007)
Python
7
star
19

hosts

[DISCONTINUED] my /etc/hosts file used to block eevil surfing trackers like Google
Shell
7
star
20

WSGITest

General-purpose WSGI server test framework and suite
Python
6
star
21

django-mail-templated-simple

Much simpler, much more cooperative implementation of django-mail-templated
Python
5
star
22

django-nginx-uwsgi-celery-deployment

Django + nginx + uWSGI + Celery deployment example
Python
5
star
23

numpy-fast-align-mse

Python
5
star
24

docker-webfsd

A tiny Alpine Linux based image that contains the webfsd binary
Dockerfile
4
star
25

bip32

BIP32 tools for ETH and BTC
Python
4
star
26

stupFF

stupid FFmpeg bindings for Python.
Python
4
star
27

slides

PowerPoint done right!
JavaScript
4
star
28

xmlserialize.py

An extensible Python-(to|from)-xml-(un)serializer in beautiful pure-Python code
Python
4
star
29

sas7bdat

World's Fastest SAS7BDAT Parser
C++
4
star
30

httpauth

WSGI HTTP Digest Auth middleware
Python
4
star
31

jfx

An ultra tiny Javascript CSS/animation framework.
JavaScript
4
star
32

audible-scraper

Shell
3
star
33

mediainfo

Tiny Python binding for MediaInfo (mediainfo.sf.net)
Python
3
star
34

blip.tv-download

3
star
35

dotfiles

~ config files
Lua
3
star
36

limited

A kinda flexible blog system (with a bad architecture) written in Python using django.
Python
3
star
37

youtube-dl-web

Simple web interface for youtube-dl
Python
3
star
38

checkin.py

Dead simple time tracking tool I have been using for the last 5 years.
Python
3
star
39

todo

[Demo below] a dead simple TODO list application for modern browsers with localStorage support
3
star
40

themissingeditor

The Missing Editor. Written in Python.
2
star
41

django-nonrel-nohistory

make frequent pulls less painful
Python
2
star
42

cparser

C
2
star
43

paperswithcode-speech-enhancement-audiosamples

Audio samples for papers on Papers With Code
2
star
44

interviewquestions

http://maxnoy.com/interviews.html
C
2
star
45

gha-test

2
star
46

django-1.11-python-3.7

Django 1.11 patched for Python 3.7 compatibility
Python
2
star
47

mooslider

JavaScript
2
star
48

aurbuilds

aurbuilds builds
Python
2
star
49

biscuit

Biscuit Is a Stupid ContinUous InTegration server (for GitHub)
Python
2
star
50

mima-simulator

Clojure assembler and interpreter for an imaginary microprocessor used for teaching at my university.
Clojure
1
star
51

celeryq.com

Tutorials, tips and tricks for the Celery task queue for Python || Celery Cloud Hosting
CSS
1
star
52

configfiles

/etc and so on.
Shell
1
star
53

ml-misc

Random Machine Learning related code snippets, utils, recipes, etc
Python
1
star
54

jonas.lophus.org

My blog/website
CSS
1
star
55

easyhtml

Indentation aware HTML. No more <, >, /
Haskell
1
star
56

svt

Simple Vocabulary Trainer
Python
1
star
57

dwm

dwm mirror + mod branch
C
1
star
58

micromamba-installer

Shell
1
star
59

git-com-aster

git com aster -> git co master
Shell
1
star
60

libcoverart

simple Python library for fetching cover art
Python
1
star
61

pandas-memorytools

Python
1
star
62

sqlar

C
1
star
63

django-project-template

Skeleton for Django projects
Python
1
star
64

thumblib

small Python thumbnailing library using PIL
Python
1
star