centroid

Centroidは、APIの発見とテストを目的としたチャットベースのオープンソース開発プラットフォームです。開発者が効率的にAPIを探索し、テストを行うためのツールを提供します。TypeScriptで構築されており、コミュニティによるサポートが期待できます。

GitHubスター

53

ユーザー評価

未評価

フォーク

4

イシュー

1

閲覧数

1

お気に入り

0

README
Centroid

A chat-based open source development platform for API discovery and testing.

License: Apache 2.0 GitHub Release GitHub Issues Repo Size Commit Activity Last Commit Discord

Centroid Demo

🚧 Development Status: Centroid is in active development (alpha). While fully functional, you may encounter breaking changes as the platform evolves. We encourage you to try it out and provide feedback!

✨ Key Features

Centroid re-imagines API workflows through the power of natural conversation. Think of it as "Postman meets ChatGPT" - a modern, intuitive approach to API interaction that lets you:

  • 💬 Chat with API Collections: Import and interact with your APIs through natural conversation

    • Support for OpenAPI/Swagger specifications
    • Import Postman collections
    • Understand and explore API endpoints through chat
  • 🚀 Execute API Endpoints: Test and run API endpoints directly from the chat interface

    • Send requests with custom parameters
    • View response data in real-time
    • Save and reuse API configurations
  • 🤖 Flexible LLM Support: Works with any OpenAI-compatible API

    • Use OpenAI, Azure OpenAI, or any compatible endpoint
    • Support for various models (GPT-4, Claude, Llama)
    • Configurable model settings
🚀 Quick Start
Using Docker

[!TIP] Please include the volume mount -v Centroid_data:/app/data in your Docker command. It's crucial for persisting your database, preventing data loss between container restarts.

Visit http://localhost:3000 to access the web interface. Visit http://localhost:8000/docs to access the backend OpenAPI documentation.

docker run -d -p 3000:3000 -p 8000:8000 -v Centroid_data:/app/data -e LLM_BASE_URL=https://api.openai.com/v1 -e LLM_API_KEY=your_api_key -e LLM_DEFAULT_MODEL=gpt-4o-mini -e FIRST_SUPERUSER=admin@example.com -e FIRST_SUPERUSER_PASSWORD=example123 --name Centroid --restart always ghcr.io/srikanth235/Centroid:main
Environment Variables
# LLM Configuration
LLM_BASE_URL=https://api.openai.com/v1      # OpenAI API compatible custom endpoint
LLM_API_KEY=your_api_key                    # Your OpenAI compatible API key
LLM_DEFAULT_MODEL=gpt-4o-mini              # Default model to use

# Authentication
FIRST_SUPERUSER=admin@example.com          # Default: admin@example.com
FIRST_SUPERUSER_PASSWORD=example123        # Default: example123

View all environment variables →

🤖 Choosing an LLM

Centroid requires an LLM with function/tool calling capabilities. We recommend using any of these tested models:

  • GPT-4o-mini
  • Claude Haiku
  • Llama 3.2 (70B)

Any models at least as powerful as the ones listed above will work well with Centroid. Models without tool calling capabilities may have limited functionality.

📊 Telemetry

Centroid includes optional telemetry to help improve the platform. This feature:

  • Is enabled by default and requires explicit opt-out
  • Only tracks API usage patterns, never sensitive data
  • Helps us understand how features are used and identify performance issues
What We Track

When enabled, Centroid tracks:

  • Chat API interactions (create/update/delete operations)
  • Basic request metrics (duration, status codes)
  • Anonymous usage patterns
  • Performance indicators

[!NOTE] You can view the exact events we track in our analytics implementation.

Configuration

Control telemetry through environment variables:

# Enable/disable telemetry
TELEMETRY_ENABLED=false
Privacy Considerations
  • No personal data or chat content is ever collected
  • All tracking is anonymous
  • Performance metrics are aggregated
  • You can self-host without any external analytics
🌟 Contributing

We love contributions! Here's how to get started:

Development Setup
  1. Clone the repository

    git clone https://github.com/Centroid/Centroid.git
    cd Centroid
    
  2. Install dependencies

    # Frontend
    pnpm install
    
    # Backend
    poetry install
    
  3. Start development servers

    ./start.sh
    
Making Changes
  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request
🤝 Support & Community

Need help? Join our community:

🙏 Credits

The initial foundation of this project was built using these excellent open-source boilerplate projects:

📄 License

Centroid is Apache 2.0 licensed.


Made with ❤️ by humans and AI