https://github.com/lluaguard/librebucket
A lightweight, self-hosted Git server with a clean web interface, built with Go.
https://github.com/lluaguard/librebucket
forge forgejo git gitea github gitlab go golang
Last synced: 7 months ago
JSON representation
A lightweight, self-hosted Git server with a clean web interface, built with Go.
- Host: GitHub
- URL: https://github.com/lluaguard/librebucket
- Owner: standard-group
- License: gpl-3.0
- Created: 2025-06-04T15:22:36.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-06-14T06:42:35.000Z (about 1 year ago)
- Last Synced: 2025-06-14T07:41:42.942Z (about 1 year ago)
- Topics: forge, forgejo, git, gitea, github, gitlab, go, golang
- Language: Go
- Homepage:
- Size: 156 KB
- Stars: 4
- Watchers: 1
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
Librebucket
A lightweight, self-hosted Git server with a clean web interface, built with Go.
Still work in progress forge!
Are you tired of big companies playing with your repositories, by removing them or trading with your data? Want to provide a small and free Git hosting for your community, friends or company? Then Librebucket (_/ˈliːbrə ˈbʌkɪt/_) for you, we promise that Librebucket will be **"independent Free/Libre Software forever"**!
## Getting Started
### Prerequisites
- Go 1.22 or later
- Git 2.20 or later
- A operating system (Linux, macOS, Windows, even Raspberry/Orange Pi!)
### Installation
TODO: add instructions for installation
### Creating Your First Repository
1. Use the API to create a new repository:
```bash
curl -X POST http://localhost:3000/api/v1/git/create \
-H "Content-Type: application/json" \
-d '{"username":"yourusername", "reponame":"yourrepo"}'
```
2. Clone your new repository:
```bash
git clone http://localhost:3000/yourusername/yourrepo.git
cd yourrepo
```
3. Make some changes and push:
```bash
echo "# My Project" > README.md
git add .
git commit -m "Initial commit"
git push -u origin main
```
### Web Interface
Access the web interface at `http://localhost:3000` to browse repositories, view code, and manage your projects.
## Configuration
TODO: do the configuration
## Development
### Building
```bash
go build -o librebucket cmd/librebucket/main.go
```
### Running Tests
```bash
go test ./...
```
### Code Style
This project follows the [Google Go Style Guide](https://google.github.io/styleguide/go/).
## Security
- All repository access is private by default
- HTTPS is recommended for secure communication
- Authentication and authorization features coming soon
## Contributing
Contributions are welcome! Please read our [contributing guidelines](CONTRIBUTING.md) before submitting pull requests.
## Repo Activity

## License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
## Acknowledgments
- Built with the amazing Go programming language
- Inspired by [Forgejo](https://codeberg.org/forgejo/forgejo) and other self-hosted Git solutions
- Uses the [go-git](https://github.com/go-git/go-git) library for Git operations