Skip to content

C-Hipple/code-review-server

Repository files navigation

code-review-server

code-review-server is a service which runs highly configurable workflows to load code reviews which you are interested into easily managed customizable interfaces.

It also supports doing local code reviews via your preferred client, allowing you to customize your experience such as doing them in your editor, using plugins, defining hotkeys, whatever you'd like.

It is designed to be client-agnostic, communicating via JSON-RPC. It ships with a web client (bun/react) and an emacs client.

web client review list Bun Client

Emacs client review list Emacs Client

Documentation

Full documentation is available at https://code-review-server.readthedocs.io/en/latest/

Quickstart

  1. Clone the repository

Repo

  1. Configure environment

    Create your config at ~/.config/codereviewserver.toml (see Configuration).

    export CRS_GITHUB_TOKEN="Github Token"  # Required.
    export GEMINI_API_KEY="Gemini Token"  # Only necessary for plugin use.

    Minimal ~/.config/codereviewserver.toml:

    Repos = ["owner/repo"]
    GithubUsername = "your-username"
    AutoWorktree = true
    
    [[Workflows]]
    WorkflowType = "SyncReviewRequestsWorkflow"
    Name = "My PRs"
    Filters = ["FilterMyPRs"]
    SectionTitle = "PRs to Review"
    
    [[Workflows]]
    WorkflowType = "SyncReviewRequestsWorkflow"
    Name = "PRs to Review"
    Filters = ["FilterNotDraft", "FilterMyReviewRequested"]
    SectionTitle = "PRs to Review"
    
    [[Plugins]]
    Name = "Summarize Diff"
    Command = "summarize_diff"
    IncludeDiff = true
    IncludeHeaders = true
    IncludeComments = true
  2. Install Server

    Alternatively, use Docker Compose to run steps 3 and 4 containerized with docker compose up.

    go install ./...

    This installs the server binary and included plugins to your $GOPATH/bin.

  3. Run a Client

    See Clients for detailed instructions on running the Web or Emacs clients.

    Web Client (Brief):

    cd bun_client
    bun install && bun run build
    bun start

    Emacs Client (Brief): Evaluate client.el and run (crs-start-server).

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors