Skip to content

Software development platform with built-in vcs, issue tracking and code review

License

Notifications You must be signed in to change notification settings

mellowagain/gitarena

Repository files navigation

GitArena

GitArena is a software development platform with built-in vcs, issue tracking and code review. It is meant as a lightweight and performant alternative to the likes of GitLab and Gitea, built with self-hosting and cross-platform/cross-architecture support in mind.

Progress

Currently, GitArena is work in progress and is not yet fully featured. The basics such as repositories and pushing/pulling as well as accounts work. Please see the issues tab for features that are still work in progress.

Building

Requirements:

  • Latest Rust stable toolchain

Compiling:

$ cargo build --release

Cargo will build all required dependencies as well as GitArena itself. The resulting binary can be found in ./target/release.

Usage

In order to run GitArena, the following environment variable needs to be set:

After start GitArena will automatically create the required tables. Please edit the settings table to configure your GitArena instance and restart GitArena. In the future this will be do-able in the web ui.

Afterwards your GitArena instance will be fully set up and you can register your account. In order to access the admin panel (/admin), please set admin on your user account in the users table to true.

Logs

By default, GitArena will write logs to a file (instead of the console) when built with --release. In order to view the logs, look for a file in the logs directory ending with the current date.

Optional environment variables

  • MAX_POOL_CONNECTIONS: Max amount of connections the Postgres connection pool should keep open and ready to use.
  • DATABASE_PASSWORD_FILE: This environment variable may contain a path to a file containing the Postgres database password. In that case, the password does not need to be specified in the Postgres connection string. This is for usage with Docker secrets.
  • SERVE_STATIC_FILES: If this environment variable is set, GitArena will serve /static resources. This is experimental. It is instead recommended configuring your reverse proxy to serve them.

Screenshots

Repository:

Repository

Repository commits:

Commits

File view:

File

Directory view:

Directory

Create repository:

Create

Import repository:

Import

Login:

Login

Sign up:

Sign up

Explore:

Explore

Admin panel:

Admin panel

About

Software development platform with built-in vcs, issue tracking and code review

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

 

Packages

No packages published

Contributors 3

  •  
  •  
  •