Skip to content

cedarjs/cedar

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

CedarJS

Join our Discord server! Documentation

About

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/

Migrating from RedwoodJS to CedarJS

  1. Search and replace all instances of "@redwoodjs/(.*)": "\d+\.\d+\.\d+" with "@cedarjs/$1": "0.1.1" (or whatever the latest version of Cedar is when you run this) in all three package.json files.
  2. Run yarn install to update your lock file.
  3. Make a git commit with all changes as a checkpoint to make it easier to see what changes in the following steps
  4. Search and replace all instances of @redwoodjs in all files with @cedarjs.
  5. Also find all mentions of storybook-framework-redwoodjs-vite and replace with storybook-framework-cedarjs
  6. Pay attention to yarn.lock. If anything changed in there you probably have to do some manual editing. (Contact me if you need help.)
  7. Delete all files and folders inside .redwood/ except README.md
  8. Run yarn install and yarn rw build. Make sure everything works as expected.
  9. Make a new git commit (or amend the previous one you did)

Optional steps

  • Update web/vite.config.ts to have import { cedar } from '@cedarjs/vite'; and plugins: [cedar()], instead of the older import redwood from '@redwoodjs/vite'; and plugins: [redwood()],

Unsupported

CedarJS 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.

Roadmap

Cleanup

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)

Future Proofing

  • 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: #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

Package Updates

  • Update packages we use to their latest versions. Notable examples:
    • react
    • prisma
    • apollo
    • vite
    • fastify

Docs

  • Mirror the RedwoodJS docs to make sure they don't get deleted
  • Document where CedarJS diverges from RedwoodJS. (Future major version.)

New Features

  • 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!

Documentation

0.x releases of CedarJS will be fully compatible with RedwoodJS v8.6, so the best documentation for CedarJS is actually still the RedwoodJS documentation, which I have a copy of here: https://cedarjs.com/docs. I have made a few edits and updates to it, but it's still mostly the same as the original.

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.

There will be no specific documentation written for CedarJS for now.

The CedarJS Team


Tobbe Lundberg
You? You? You?

Sponsors

TwoDots