Skip to content

Sage-Bionetworks/sage-monorepo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Sage Monorepo


Angular CLI logo

A development environment for building robust apps faster.


Docs Site · Contributing Guidelines · Submit an Issue

CI/CD License


About the Monorepo

The Sage Monorepo is a polyglot workspace where we design, build, and ship multiple biomedical products. It hosts web apps, REST APIs, microservices, and databases across TypeScript, Java, Python, and R.

It is designed to be language-agnostic, with reusable components and shared infrastructure that allow teams to focus on creative solutions instead of boilerplate setup.

Architecture & Stack

  • Languages: TypeScript, Java, Python, R
  • Frameworks: Angular, Spring Boot, Python services, Node.js utilities
  • Infrastructure Components: PostgreSQL, OpenSearch, Caddy (reverse proxy), containerized stacks
  • Monorepo tooling: Nx for orchestration and task graph caching
  • Automation: GitHub Actions for CI/CD, code quality, and security checks

OpenAPI-First Workflow

We follow an API contract-first approach:

  1. Define the product API with OpenAPI specifications.
  2. Generate server stubs and client SDKs (Angular, Java, Python, TypeScript).
  3. Implement product logic inside generated skeletons.

Benefits:

  • Shared, consistent contracts across products
  • Fewer breaking changes & faster alignment
  • Multi-language clients and documentation out of the box

Products

Product Description Link
Agora Evidence explorer for Alzheimer’s research Visit
OpenChallenges Platform for scientific & citizen science challenges Visit
Model-AD Resources for Alzheimer’s disease model data (upcoming)

➡ More services and details: see the Docs Site.

Guiding Values

  • Developer Experience: Shared tooling, cached builds, reproducible workflows
  • Reuse over Rebuild: Shared UI, API clients, configs, infra scripts
  • Focus on Science: More time on creative problem-solving, less on setup

Dev Environment

The monorepo ships with a Dev Container configuration including Node.js, Java, Python, R, and database tooling.

  • Works locally with VS Code Dev Containers or in GitHub Codespaces
  • Provides a reproducible setup for contributors and CI/CD
  • Makes onboarding and remote development seamless

Clicking the button below will open the Sage Monorepo in VS Code inside its preconfigured development container, giving you a ready-to-use environment with all required tools installed:

Open in Dev Containers

Contributing

If you like the Sage Monorepo, its architecture, approach, or the projects it brings together (such as Agora, OpenChallenges, and MODEL-AD), please consider giving it a star ⭐ and check out the contributing guide to get involved.