Giter VIP home page Giter VIP logo

gitarena's Introduction

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
  • libmagic
    • Windows: Please install libmagic via vcpkg (triplet x64-windows-static-md) and set the environment variable VCPKG_ROOT to your vcpkg directory (more information)
    • macOS: Please install libmagic using Homebrew
    • Linux: Please install libmagic with your system package manager

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 table as defined in schema.sql and exit. Please edit the settings table to configure your GitArena instance and start GitArena again. 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.
  • MAGIC: Path to a libmagic file database. If not specified, GitArena will fall back to the generic one shipped with this program.

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

Thank you

Copyright © 2000-2022 JetBrains s.r.o. JetBrains and the JetBrains logo are registered trademarks of JetBrains s.r.o.

Product subscriptions provided by JetBrains

gitarena's People

Contributors

aliemjay avatar dependabot[bot] avatar mellowagain avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.