docs/DIRECTORY_LICENSING.md
This document outlines the directory-based licensing structure of the React on Rails monorepo. LICENSE.md is the authoritative source for which directories use which license.
The repository is a monorepo containing two Ruby gems and three NPM packages under two licenses.
react_on_rails/ (monorepo root)
├── react_on_rails/ # Core Ruby gem (including lib/, spec/, sig/)
├── packages/react-on-rails/ # Core NPM package (including tests)
├── docs/ # Documentation
├── .github/ # GitHub workflows
└── [all other directories] # MIT unless listed as Pro below
react_on_rails/ (monorepo root)
├── react_on_rails_pro/ # Pro Ruby gem (including specs)
├── packages/react-on-rails-pro/ # Pro NPM package (including tests)
└── packages/react-on-rails-pro-node-renderer/ # Pro Node renderer (including tests)
Important Distinction:
Gemspec Files:
react_on_rails/react_on_rails.gemspec: s.license = "MIT"react_on_rails_pro/react_on_rails_pro.gemspec: s.license = "LicenseRef-LICENSE"Package.json Files:
packages/react-on-rails/package.json: "license": "MIT" with a package-local LICENSE.mdpackages/react-on-rails-pro/package.json: "license": "SEE LICENSE IN LICENSE.md"packages/react-on-rails-pro-node-renderer/package.json: "license": "SEE LICENSE IN LICENSE.md"Never Move Pro Code to MIT Directories: No Pro-licensed code may end up in MIT-licensed directories.
Update LICENSE.md Immediately: Whenever directories are moved or created, LICENSE.md must be updated to reflect the new structure. It is the source of truth for directory licensing.
Keep License Fields Accurate: Each package's package.json and gemspec must declare the correct license for its directory.
For licensing questions, see LICENSING_FAQ.md and LICENSE.md.