Categorygithub.com/thegalactiks/giteway
modulepackage
0.1.9
Repository: https://github.com/thegalactiks/giteway.git
Documentation: pkg.go.dev

# README

GitHub Workflow Status Latest version Github Repo Stars License

Giteway - HTTP Gateway for Git Services

Giteway is an HTTP Gateway for Git services, providing a standardized interface for fetching Git information and commits from various service providers, including GitHub, GitLab, Bitbucket (soon), and SSH Git (soon).

Features

  • Standardized Interface: Giteway exposes a consistent API endpoint for interacting with Git repositories, irrespective of the underlying service provider.
  • Multi-Provider Support: Easily fetch Git data from GitHub and GitLab.
  • Authentication: Securely handle authentication for different Git service providers, supporting various authentication mechanisms.
  • HTTP Gateway: Access Git data through standard HTTP requests, making it easy to integrate into web applications.
  • Modular Design: Designed with modularity in mind, making it extensible for adding support for new Git providers.

Getting Started

To get started with Giteway, you can deploy it as a Docker container using the following steps:

  1. Pull the Giteway Docker image from the Docker Hub:

    docker pull galactiks/giteway:latest
    
  2. Run the Docker container, exposing the necessary ports:

    docker run -d -p 5000:5000 galactiks/giteway:latest
    

    This command will start the Giteway container and map port 5000 of the container to port 5000 on your host machine.

  3. Verify that Giteway is running by accessing the API endpoint in your browser or using a tool like cURL:

    curl http://localhost:5000/repos/github.com/thegalactiks
    

    You should receive a response with the list of public repositories.

  4. You can now start using Giteway to interact with Git repositories through the exposed API.

For more detailed information on how to use Giteway and its API, refer to the API Documentation.

Configuration

Giteway can be configured using environment variables to customize its behavior. The following environment variables are supported:

Variable NameDescriptionDefault Value
GITEWAY_SERVE_BASE_URLThe base URL at which Giteway is served.
GITEWAY_SERVE_PORTThe port at which Giteway is served.5000
GITEWAY_SERVE_CORS_ENABLEDIndicates whether CORS is enabled for Giteway.false
GITEWAY_SERVE_CORS_ALLOW_ORIGINSThe list of allowed origins for CORS.*
GITEWAY_SERVE_CORS_ALLOWED_METHODSThe list of allowed HTTP methods for CORS.GET,POST
GITEWAY_SERVE_CORS_ALLOW_HEADERSThe list of allowed headers for CORS.Authorization, Content-Type, Cookie
GITEWAY_SERVE_CORS_EXPOSE_HEADERSThe list of exposed headers for CORS.Content-Type, Set-Cookie
GITEWAY_SERVE_CORS_ALLOW_CREDENTIALSIndicates whether CORS allows credentials.true
GITEWAY_SERVE_TIMEOUTThe timeout duration for Giteway requests.5000
GITEWAY_LOGGING_LEVELThe logging level for Giteway.-1
GITEWAY_LOGGING_ENCODINGThe encoding format for Giteway logs.console
GITEWAY_LOGGING_DEVELOPMENTIndicates whether Giteway is in development mode.true
GITEWAY_GITHUB_PRIVATE_KEY_PATHThe file path to the private key for GitHub authentication.
GITEWAY_GITHUB_APP_IDThe ID of the GitHub app.
GITEWAY_GITHUB_INSTALLATIONSThe map of GitHub installations.

API Documentation

Documentation for the Giteway API can be found here.

License

This project is licensed under the MIT License @ Galactiks.

# Packages

No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author