Self-Hosted alternative to GitHub Gists
 
 
 
 
 
 
Go to file
Aravinth Manivannan 632fe272fa
feat: read_file processes directories
SUMMARY
    This program supports directories in gists. This patch modifies
    Data::read_file to support directory reads. Additionally,
    CreateGistRequest is modified to accept files in subdirectories.

DESCRIPTION
    Data::read_file
	When repository contains subdirectories, it will recursively
	read all files and return their contents.

    crate::data::api::v1::gists::GitFileMode
	Set of known(to me) file modes that Git uses.
	GitFileMode::Unsupported is used to take advantage of
	num_enum::FromPrimitive. The alternative would have been
	num_enum::TryFromPrimitive, which returns errors on unsupported
	values. I felt the former was cleaner.
2022-02-18 21:38:38 +05:30
.github fix: lints and run migrations before generating coverage in CI 2022-02-13 00:07:28 +05:30
config feat: bootstarp gists 2022-02-12 23:48:35 +05:30
database feat: DB: visibility filtered gist retrieval 2022-02-16 17:13:12 +05:30
docs feat: ecosystem overview 2022-02-12 16:31:00 +05:30
src feat: read_file processes directories 2022-02-18 21:38:38 +05:30
.env-sample feat: bootstrap database ops 2022-02-12 16:35:55 +05:30
.gitignore feat: setup tests 2022-02-12 18:25:45 +05:30
Cargo.lock feat: read_file processes directories 2022-02-18 21:38:38 +05:30
Cargo.toml feat: read_file processes directories 2022-02-18 21:38:38 +05:30
LICENSE.md add license 2022-02-11 17:42:13 +05:30
Makefile feat: add gists_gists, gists_comments and gists_comments & related methods 2022-02-14 20:11:26 +05:30
README.md feat: add gitea oauth integration to feat list 2022-02-18 12:45:43 +05:30
build.rs init 2022-02-11 17:42:35 +05:30
sqlx-data.json feat: add gists_gists, gists_comments and gists_comments & related methods 2022-02-14 20:11:26 +05:30

README.md

Gists

Self-Hosted GitHub Gists

Build dependency status codecov

Features

  • Upload code snippets
  • Syntax Highlighting
  • Comments
  • Versioning through Git
  • Fork gists
  • Gist privacy: public, unlisted, private
  • Git clone via HTTP and SSH
  • Activity Pub implementation for publishing native gists and commenting
  • Gitea OAuth integration

Why?

Gists are nice, while there are wonderful forges like Gitea, there isn't a libre pastebin implementation that can rival GitHub Gists.

Usage

  1. All configuration is done through ./config/default.toml(can be moved to /etc/gists/config.toml).