Skip to content

Commit 58bf7ed

Browse files
authored
Merge pull request #9 from criteo/docs-update-readme-project-structure
docs: Update README and project structure with improved documentation
2 parents 187f363 + 942113d commit 58bf7ed

1 file changed

Lines changed: 33 additions & 29 deletions

File tree

README.md

Lines changed: 33 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -592,46 +592,50 @@ Credentials are stored at: `~/.config/cola-registry/credentials.yaml`
592592
```bash
593593
make build # Build server binary
594594
make build-cli # Build CLI client binary
595-
make clean # Remove artifacts
596-
make test # Run tests
597-
make test-cli # Run CLI tests
595+
make build-all # Build both server and CLI
596+
make clean # Remove build artifacts
597+
make test # Run all tests
598+
make test-cli # Run CLI tests only
598599
make run # Build and run server
599600
make fmt # Format code
600-
make lint # Run linter
601+
make fmt-check # Check formatting (for CI)
602+
make lint # Run linter (go vet)
603+
make install-cli # Install CLI to $GOPATH/bin
601604
make help # Show all targets
602605
```
603606

604607
### Project Structure
605608

606609
```
607610
cmd/
608-
├── cola-registry/ # Server binary entry point
609-
└── cola-regctl/ # CLI client binary entry point
611+
├── cola-registry/ # Server binary entry point
612+
└── cola-regctl/ # CLI client binary entry point
610613
internal/
611-
├── server/ # HTTP server
612-
│ ├── handlers/ # HTTP handlers
613-
│ └── middleware/ # Middleware (auth, logging, etc.)
614-
├── client/ # CLI client (NEW)
615-
│ ├── commands/ # Cobra commands (registry, package, version, login, etc.)
616-
│ ├── auth/ # Credential storage and authentication
617-
│ ├── config/ # URL and configuration resolution
618-
│ ├── output/ # Output formatters (table, JSON)
619-
│ ├── prompts/ # Interactive prompts
620-
│ ├── validation/ # Client-side validation
621-
│ └── errors/ # Error handling and exit codes
622-
├── storage/ # Storage layer (file, OCI, S3)
623-
├── models/ # Shared data models
624-
├── auth/ # Server authentication
625-
├── cli/ # Server CLI commands
626-
├── config/ # Server configuration
627-
└── apierrors/ # API error types
628-
scripts/
629-
├── populate-test-data.sh # curl-based test data
630-
├── clean-test-data.sh # curl-based cleanup
631-
├── populate-test-data-cli.sh # CLI-based test data
632-
└── clean-test-data-cli.sh # CLI-based cleanup
614+
├── server/ # HTTP server
615+
│ ├── handlers/ # HTTP handlers (health, index, registry, package, version)
616+
│ └── middleware/ # Middleware (auth, cors, logging, ratelimit)
617+
├── client/ # CLI client
618+
│ ├── commands/ # Cobra commands (registry, package, version, login, etc.)
619+
│ ├── auth/ # Credential storage (keyring, file)
620+
│ ├── config/ # URL resolution
621+
│ ├── output/ # Output formatters (table, JSON)
622+
│ ├── prompts/ # Interactive prompts
623+
│ ├── validation/ # Client-side validation
624+
│ └── errors/ # Exit codes
625+
├── storage/ # Storage backends (file, OCI, S3)
626+
├── models/ # Shared data models
627+
├── auth/ # Server authentication (basic, none)
628+
├── cli/ # Server CLI commands
629+
├── config/ # Server configuration
630+
└── apierrors/ # API error types
631+
tests/
632+
└── integration/ # Integration tests (OCI, S3, server)
633+
scripts/ # Test data scripts
633634
docker/
634635
└── Dockerfile # Multi-stage Docker build
635636
docs/
636-
└── spec.md # Complete specification
637+
├── openapi.yaml # OpenAPI specification
638+
└── quickstart.md # Quick start guide
639+
.github/
640+
└── workflows/go.yml # CI/CD pipeline
637641
```

0 commit comments

Comments
 (0)