hyperweb-io / hyperweb-io/starship
improvements: restructure go modules
- Dominant language
- TypeScript
- Stars
- 77
- Forks
- 39
- PR merge metrics
- No merged PRs in 30d
Description
## Overview
Currently the structure is flat which ends up looking like:
```bash
starship/
cmd/
starship/
registry/
faucet/
exposer/
client/
tools/
...
```
The benifit of this structure is:
* Seperate `go.mod` for each of the components
* Each component has its own build system as well as Dockerfile
## Proposal
We should restructure the go modules such that they become part of the same `go.mod` as well. Something like:
```bash
starship/
cmd/
cli/
registry/
faucet/
exposer/
pkg/
registry/
faucet/
exposer/
client/
tools/
go.mod
```
Pros:
* Cleaner structure in the root dir
* Single `go.mod` will be needed (can have seperate ones too)
* Can couple `config` `logging` together as well into one system.
Cons:
* Different versions release wont be easy to do next (currently we dont have differnt versions anyways)
* All the pkgs will be around being http handlers and a microservice instead of packages.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.