back to home

wundergraph / cosmo

The open-source solution to building, maintaining, and collaborating on GraphQL Federation at Scale. The alternative to Apollo Studio and GraphOS.

1,177 stars
218 forks
150 issues
TypeScriptGoHTML

AI Architecture Analysis

This repository is indexed by RepoMind. By analyzing wundergraph/cosmo in our AI interface, you can instantly generate complete architecture diagrams, visualize control flows, and perform automated security audits across the entire codebase.

Our Agentic Context Augmented Generation (Agentic CAG) engine loads full source files into context on-demand, avoiding the fragmentation of traditional RAG systems. Ask questions about the architecture, dependencies, or specific features to see it in action.

Source files are only loaded when you start an analysis to optimize performance.

Embed this Badge

Showcase RepoMind's analysis directly in your repository's README.

[![Analyzed by RepoMind](https://img.shields.io/badge/Analyzed%20by-RepoMind-4F46E5?style=for-the-badge)](https://repomind.in/repo/wundergraph/cosmo)
Preview:Analyzed by RepoMind

Repository Overview (README excerpt)

Crawler view

WunderGraph Cosmo - The GraphQL Federation Platform Reach for the stars, ignite your cosmo! Quickstart · Examples · Docs · CLI · Community · Changelog · Hiring Overview WunderGraph Cosmo is a comprehensive Lifecycle API Management platform tailored for Federated GraphQL. It encompasses everything from Schema Registry, composition checks, and analytics, to metrics, tracing, and routing. Whether you’re looking to deploy 100% on-prem or prefer a Managed Service, Cosmo offers flexibility without vendor lock-in, all under the Apache 2.0 license. The State of GraphQL Federation 2024 Get insights from industry experts and Federation practitioners across all industries and learn how companies are using GraphQL Federation. Head over to the State of GraphQL Federation 2024 page and download the full **48-page PDF report** for free! Why Federated GraphQL? GraphQL Federation empowers organizations to break down their GraphQL schema into multiple smaller, manageable schemas, each maintained by different teams or services. These individual schemas are then combined into a single, unified graph, ensuring that all teams have consistent access to the data they need. In today's data-driven world, where information is often referred to as the new oil, building a unified API that can be consumed by both internal and external teams is more crucial than ever. Not all companies start with a federated architecture, Cosmo supports both monolithic and federated architectures. Getting Started To get started with WunderGraph Cosmo, follow these steps: • **Clone the Repository**: • **Choose your Example**: Select the example that best fits your role and use case from the Try Cosmo Now section and follow the instructions. • **Explore Further**: Check out the Docs for more information on Cosmo's features and capabilities. Try Cosmo Now! :rocket: Get started with Cosmo by choosing the example that best fits your role and use case: • **Developer**: Quickly start with Cosmo by composing a federated GraphQL schema locally from multiple services and running the Cosmo Router. • **Architect**: Evaluate the entire Cosmo Platform for your organization by running it locally with Docker Compose. • **Platform Engineer**: Deploy the entire Cosmo Platform to Kubernetes through our official Helm Chart. • **Decision Maker (e.g. Engineering Manager, CTO)**: Get in touch with the founders to discuss how Cosmo can help your organization. Local Development To contribute to this repo and get the local environment up and running, please refer to **CONTRIBUTING.md** _For any questions, feedback, or support, please contact us._ From the WunderGraph Blog Here's a selection of blog posts that focus on the technical aspects of Cosmo: • **How we scaled Cosmo Router for the SuperBowl** • **The Architecture of our Observability Stack** • **How Normalization affects Query Planning** • **Zero cost abstraction for the @skip and @include Directives** • **Algorithm to minify GraphQL ASTs by up to 99%** • **Federated GraphQL Subscriptions with NATS and Event Driven Architecture** • **Implementing the viewer pattern in GraphQL Federation** • **How we're using Epoll/Kqueue to scale GraphQL Subscriptions** • **ASTJSON - A fast way to merge JSON objects** • **Dataloader 3.0, an efficient algorithm for Federation data loading** Contributing We welcome contributions from the community! Whether it's fixing a bug, adding new features, or improving documentation, your help is greatly appreciated. Please take a look in our Contributing Guide to get started. License Cosmo is licensed under the Apache License, Version 2.0.