Skip to content

NDLANO/ndla

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

61,010 Commits
 
 
 
 
 
 
 
 

Repository files navigation

NDLA monorepo

This repository consolidates NDLA's previously separate repositories into a single monorepo while preserving each repository's full git history. The individual projects were imported with git subtree and continue to build exactly as they did in their original repositories.

Layout

backend/                      # Scala/Java services, built with Mill
frontend/
  packages/                   # @ndla/* packages (yarn workspaces + Lerna + Nx)
  ndla-frontend/              # public-facing frontend (React/Vite SSR)
  editorial-frontend/         # editorial frontend (React/Vite)
  graphql-api/                # GraphQL gateway (Express + Apollo)
tools/
  sync-subtrees.sh            # pull latest master of each upstream repo

Each project keeps its own package.json / build configuration / Dockerfile / .github directory. No build tooling has been unified yet — nx orchestrates the frontend side and mill the backend side, unchanged.

Source repositories

Path Upstream
backend/ [email protected]:ndlano/backend.git
frontend/packages/ [email protected]:ndlano/frontend-packages.git
frontend/ndla-frontend/ [email protected]:ndlano/ndla-frontend.git
frontend/editorial-frontend/ [email protected]:ndlano/editorial-frontend.git
frontend/graphql-api/ [email protected]:ndlano/graphql-api.git

Syncing from the upstream repos

While the original repositories are still the source of truth, pull their latest master into the monorepo with:

tools/sync-subtrees.sh

This runs git subtree pull for every project (one-way: upstream → monorepo). Run it on a clean working tree. Requires a git that ships git subtree (e.g. Homebrew git); Apple's /usr/bin/git does not include it.

About

Monorepo containing code related to ndla.no

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors