CedarJS is a fork of the RedwoodJS framework with the goal of taking it into the modern web development era with a smooth transition path for existing RedwoodJS applications.
CedarJS is a reliable, modern, and actively maintained full-stack React framework used in production by both large and small companies.
CedarJS would obviously not be where it is today without the vision and heroic efforts of the RedwoodJS founders, maintainers and community.
cedar has become a powerful symbol of strength and revitalization
— https://indigenousfoundations.arts.ubc.ca/cedar/
Search and replace all instances of "@redwoodjs/(.*)": "\d+\.\d+\.\d+"
with "@cedarjs/$1": "0.0.3"
(or whatever the latest version of Cedar is when
you run this) in all three package.json
files. Run yarn install
to update
your lock file.
Search and replace all instances of @redwoodjs
in all files with @cedarjs
.
Pay attention to yarn.lock
. If anything changed in there you probably have to
do some manual editing. Also find all mentions of
storybook-framework-redwoodjs-vite
and replace with
storybook-framework-cedarjs
Cedar doesn't have the equivalent of Redwood Studio yet. So Studio will not work for now. Let me know if that's something you use and need.
Delete all files and folders inside .redwood/
except README.md
These are things I want to remove to make the surface area of things I need to maintain smaller. Notice that UI libraries you already have setup will continue to work. Just new projects won't have the setup support for them. Auth and deploy providers are more difficult. I'll leave those in longer. Let me know what you use so I know what to keep and what to remove!
- Mantine and Chakra-UI setup
- Redwood Record
- Telemetry
- Auth providers I don't know of anyone using
- Deploy providers I don't know of anyone using
- Old docs versions
- Old codemods
- The structure package (internal legacy package)
- Make all packages ESM only where possible and ESM+CJS where needed to
keep compatibility with existing RW apps. Packages still to convert:
-
@cedarjs/cli
-
@cedarjs/fastify-web
-
@cedarjs/api-server
-
@cedarjs/api
- etc. Full list: cedarjs#19
-
- Future major version: Make all packages ESM only
- Future major version: Make new Cedar apps ESM only
- Future major version: Make it possible to switch existing Cedar apps to ESM
- Enable strict mode for new Cedar TypeScript apps.
- Upgrade to Node 24
- Setup dependabot/renovate to automatically merge PRs that pass all checks
- Move to Vitest for Cedar apps to prepare for ESM support
- Update packages we use to their latest versions. Notable examples:
-
react
-
prisma
-
apollo
-
vite
-
fastify
-
- Mirror the RedwoodJS docs to make sure they don't get deleted
- Document where CedarJS diverges from RedwoodJS. (Future major version.)
- Better support for file uploads
- dbAuth version with OAuth support
- Whatever I need to make it easier to work with the OpenAI API/SDK and other AI tools
- Your feature request here! Let me know what you need!
The best documentation for CedarJS is actually still the RedwoodJS documentation. 0.x versions of CedarJS will be fully compatible with RedwoodJS v8.6 and there will be no specific documentation written for CedarJS for now.
The only thing you'll have to adjust are the package names and replace every
@redwoodjs
package with a @cedarjs
package of the same name.
Tobbe Lundberg |