DEV Community

Alex Spinov
Alex Spinov

Posted on

Gitea Has a Free API — Lightweight Self-Hosted Git

Gitea is a lightweight, self-hosted Git service. It is like GitHub but runs on minimal resources — even a Raspberry Pi.

What Is Gitea?

Gitea provides Git hosting, code review, CI/CD, and project management in a single Go binary.

Features:

  • Git repository hosting
  • Pull requests and code review
  • Issues and project boards
  • CI/CD (Gitea Actions, GitHub Actions compatible)
  • Package registry
  • Single binary, low resources

Quick Start

docker run -p 3000:3000 -p 22:22 gitea/gitea:latest
Enter fullscreen mode Exit fullscreen mode

REST API

# List repositories
curl https://gitea.example.com/api/v1/repos/search \
  -H "Authorization: token YOUR_TOKEN"

# Create repository
curl -X POST https://gitea.example.com/api/v1/user/repos \
  -H "Authorization: token YOUR_TOKEN" \
  -d '{"name":"new-repo","private":false,"description":"My project"}'

# Create issue
curl -X POST https://gitea.example.com/api/v1/repos/OWNER/REPO/issues \
  -H "Authorization: token YOUR_TOKEN" \
  -d '{"title":"Bug report","body":"Steps to reproduce..."}'

# List pull requests
curl https://gitea.example.com/api/v1/repos/OWNER/REPO/pulls \
  -H "Authorization: token YOUR_TOKEN"
Enter fullscreen mode Exit fullscreen mode

Use Cases

  1. Self-hosted GitHub — your own code platform
  2. Air-gapped — offline development
  3. CI/CD — GitHub Actions compatible
  4. Education — free Git hosting for students
  5. Homelab — runs on Raspberry Pi

Gitea vs Alternatives

Feature Gitea GitLab Gogs
Memory 256MB 4GB+ 256MB
CI/CD Yes Yes No
Actions compat Yes No No
Package registry Yes Yes No
Written in Go Ruby Go

Need web data at scale? Check out my scraping tools on Apify or email spinov001@gmail.com for custom solutions.

Top comments (0)