{"id":17032412,"url":"https://github.com/mellowagain/gitarena","last_synced_at":"2025-04-10T02:24:46.057Z","repository":{"id":37176731,"uuid":"281788341","full_name":"mellowagain/gitarena","owner":"mellowagain","description":"Software development platform with built-in vcs, issue tracking and code review","archived":false,"fork":false,"pushed_at":"2024-04-05T15:41:58.000Z","size":6838,"stargazers_count":87,"open_issues_count":17,"forks_count":12,"subscribers_count":5,"default_branch":"main","last_synced_at":"2025-04-02T16:51:34.889Z","etag":null,"topics":["code-review","git","hacktoberfest","issue-tracker","linux","rust","vcs"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mellowagain.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-07-22T21:39:02.000Z","updated_at":"2024-12-18T01:08:05.000Z","dependencies_parsed_at":"2024-10-31T04:03:45.132Z","dependency_job_id":"f110749c-facf-4fc9-99d1-8b920090f71b","html_url":"https://github.com/mellowagain/gitarena","commit_stats":{"total_commits":366,"total_committers":4,"mean_commits":91.5,"dds":0.06557377049180324,"last_synced_commit":"2a61388b862f28124368fd0f955b6658d0eb3674"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mellowagain%2Fgitarena","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mellowagain%2Fgitarena/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mellowagain%2Fgitarena/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mellowagain%2Fgitarena/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mellowagain","download_url":"https://codeload.github.com/mellowagain/gitarena/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248143543,"owners_count":21054794,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["code-review","git","hacktoberfest","issue-tracker","linux","rust","vcs"],"created_at":"2024-10-14T08:28:24.931Z","updated_at":"2025-04-10T02:24:46.037Z","avatar_url":"https://github.com/mellowagain.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# GitArena\n\nGitArena is a software development platform with built-in vcs, issue tracking and code review.\nIt is meant as a lightweight and performant alternative to the likes of \nGitLab and Gitea, built with self-hosting and cross-platform/cross-architecture\nsupport in mind.\n\n## Progress\n\nCurrently, GitArena is work in progress and is not yet fully featured.\nThe basics such as repositories and pushing/pulling as well as accounts\nwork. Please see the issues tab for features that are still work in progress.\n\n## Building\n\nRequirements:\n\n* Latest Rust stable toolchain\n* `libmagic`\n  * Windows: Please install `libmagic` via `vcpkg` (triplet `x64-windows-static-md`) and set the environment variable `VCPKG_ROOT` to your vcpkg directory ([more information](https://github.com/robo9k/rust-magic-sys#building))\n  * macOS: Please install `libmagic` using Homebrew\n  * Linux: Please install `libmagic` with your system package manager\n\nCompiling:\n\n```\n$ cargo build --release\n```\n\nCargo will build all required dependencies as well as GitArena itself.\nThe resulting binary can be found in `./target/release`.\n\n## Usage\n\nIn order to run GitArena, the following environment variable needs to be set:\n\n* `BIND_ADDRESS`: [Socket address](https://doc.rust-lang.org/nightly/std/net/trait.ToSocketAddrs.html) to bind to, for example `localhost:8080` or `127.0.0.1:80` (Port is required)\n* Specify either of these two environment variables:\n    * `DATABASE_URL_FILE`: Path to a file containing the [Postgres connection string][postgres]\n    * `DATABASE_URL`: Raw [Postgres connection string][postgres]\n\nAfter start GitArena will automatically create the required tables. Please edit the `settings` table to configure your\nGitArena instance and restart GitArena. In the future this will be do-able in the web ui.\n\nAfterwards your GitArena instance will be fully set up and you can register\nyour account. In order to access the admin panel (`/admin`), please set\n`admin` on your user account in the `users` table to `true`.\n\n### Logs\n\nBy default, GitArena will write logs to a file (instead of the console) when built with `--release`. In order\nto view the logs, look for a file in the `logs` directory ending with the current date.\n\n### Optional environment variables\n\n* `MAX_POOL_CONNECTIONS`: Max amount of connections the Postgres connection pool should keep open and ready to use.\n* `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][postgres]. This is for usage with Docker secrets.\n* `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.\n* `MAGIC`: Path to a [libmagic](https://man7.org/linux/man-pages/man3/libmagic.3.html) file database. If not specified, GitArena will fall back to the generic one shipped with this program.\n\n## Screenshots\n\nRepository:\n\n![Repository](https://i.cutegirl.tech/vka53i6m9wnv.png)\n\nRepository commits:\n\n![Commits](https://i.cutegirl.tech/ed3qdisinquh.png)\n\nFile view:\n\n![File](https://i.cutegirl.tech/cjqzyh1lre07.png)\n\nDirectory view:\n\n![Directory](https://i.cutegirl.tech/kxgv64zjneoz.png)\n\nCreate repository:\n\n![Create](https://i.cutegirl.tech/2xfz586doi0q.png)\n\nImport repository:\n\n![Import](https://i.cutegirl.tech/ya0rkuv0py0c.png)\n\nLogin:\n\n![Login](https://i.cutegirl.tech/8biqtc0a7fhi.png)\n\nSign up:\n\n![Sign up](https://i.cutegirl.tech/xiuba03gdmkv.png)\n\nExplore:\n\n![Explore](https://i.cutegirl.tech/c6uba7e0os35.png)\n\nAdmin panel:\n\n![Admin panel](https://i.cutegirl.tech/b5g9vx54fnae.png)\n\n## Thank you\n\n| Jetbrains                                                                                                                                                                                                               | Instatus                                                                            |\n|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------|\n| [![Copyright © 2000-2022 JetBrains s.r.o. JetBrains and the JetBrains logo are registered trademarks of JetBrains s.r.o.](https://resources.jetbrains.com/storage/products/company/brand/logos/jb_beam.svg)][jetbrains] | [![Instatus](https://avatars.githubusercontent.com/u/57594402?s=400\u0026v=4)][instatus] |\n| Product subscriptions provided by JetBrains                                                                                                                                                                             | Status page provided by Instatus                                                    |\n\n[postgres]: https://www.postgresql.org/docs/12/libpq-connect.html#id-1.7.3.8.3.6\n[jetbrains]: https://jb.gg/OpenSourceSupport\n[instatus]: https://instatus.com/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmellowagain%2Fgitarena","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmellowagain%2Fgitarena","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmellowagain%2Fgitarena/lists"}