godo  by digitalocean

Go client for DigitalOcean API and AI inference

Created 11 years ago
1,532 stars

Top 26.5% on SourcePulse

GitHubView on GitHub
Project Summary

Summary

digitalocean/godo is a Go client library for the DigitalOcean V2 API, enabling developers to programmatically manage cloud infrastructure and utilize the Gradient AI Platform. It simplifies automation and integration for Go applications needing to interact with DigitalOcean services, including recent AI features like chat completions and image generation.

How It Works

This project provides a Go SDK abstracting DigitalOcean's RESTful API. It uses standard Go patterns for client instantiation and service access. A key feature is its first-class integration with DigitalOcean's Gradient AI Platform, allowing seamless interaction with models for chat completions, image generation, embeddings, and model management via the same godo.Client.

Quick Start & Requirements

Highlighted Details

  • AI & Inference: Comprehensive support for Gradient AI Platform (chat completions, image generation, embeddings, model listing, batch inference).
  • Resource Management: Full API coverage for Droplets, Kubernetes, Volumes, Networking, and Registry.
  • Pagination: Examples provided for handling page-based and token-based pagination.
  • Resilience: Configurable automatic retries and exponential backoff for transient API errors (429, 5xx) via go-retryablehttp.

Maintenance & Community

The repository welcomes pull requests, with contribution guidelines available. Specific community channels or notable maintainers/sponsors are not detailed in the README.

Licensing & Compatibility

The README does not specify a software license. This omission prevents an assessment of its compatibility for commercial use or closed-source linking.

Limitations & Caveats

  • Authentication Scope: AI/Inference APIs require a full-access PAT or Gradient Model Access Key; infrastructure calls are more flexible.
  • Manual Pagination: Developers must implement logic to iterate through paginated API results.
  • Unspecified License: The lack of a declared license is a significant adoption blocker requiring external verification.
Health Check
Last Commit

1 day ago

Responsiveness

Inactive

Pull Requests (30d)
18
Issues (30d)
0
Star History
5 stars in the last 30 days

Explore Similar Projects

Starred by Chris Lattner Chris Lattner(Author of LLVM, Clang, Swift, Mojo, MLIR; Cofounder of Modular), Tobi Lutke Tobi Lutke(Cofounder of Shopify), and
13 more.

modular by modular

0.2%
26k
AI toolchain unifying fragmented AI deployment workflows
Created 3 years ago
Updated 11 hours ago
Feedback? Help us improve.