Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Migration to Craft.js #22

Closed
iojcde opened this issue Jun 21, 2021 · 5 comments
Closed

Migration to Craft.js #22

iojcde opened this issue Jun 21, 2021 · 5 comments

Comments

@iojcde
Copy link
Contributor

iojcde commented Jun 21, 2021

Craft.js is another page-builder framework like Grapes.js (which destack currently uses)

However, Grapes.js isn't the best fit for this project.

1. TypeScript support

Fully typing Destack isn't possible yet because Grapes.js doesn't have any (working) TypeScript support yet. There has been a community effort before, but it seems to be abandoned for now.

Craft.js has TypeScript definitions embedded in it.

2. Grapes.js wasn't made to be used with react, unlike Craft.js.

Craft.js was made to be used with react, which means maintaining the project will be easier for the future.

3. Craft.js already has a system to store the component state.

The basic example includes a feature to copy the (compressed) state to clipboard. This will make it easier to do what destack does now ( parsing the default.json, etc ).

Here's a quick guide: link

This issue exists for discussion on the topic, and for tracking the feature.

@jpetrantoni
Copy link

Any update on this? I would like to contribute to migrating to craft.js. This project is severely limited in scope from grapejs.

@LiveDuo
Copy link
Owner

LiveDuo commented Dec 6, 2022

@jpetrantoni

There's significant work done in feature/craftjs. It's my main focus now regarding the project.

I'd try to get a complete status on a PR in a few days. Quick summary for now:

  • MVP is now at a working in the feature branch
  • Editor is a bit slow to load (reason is Next.js transpiles the editor react code in production)
  • Some themes are not yet checked if they work properly (Hyper UI is but Tailblocks and Meraki UI are not)
  • We'd need e2e tests that works with Craft.js

If you are looking to contribute you can have a look at feature/craftjs. Some things that might be helpful are e2e tests and maybe having a quick check with Tailblocks and Meraki UI components.

@LiveDuo LiveDuo pinned this issue Dec 8, 2022
@LiveDuo
Copy link
Owner

LiveDuo commented Dec 17, 2022

There's a new starter project for Destack v2 (with Craft.js) at destack-starter-beta for anyone looking to have a peak.

You can get it locally by:

git clone https://github.com/liveduo/destack-starter-beta

@brunonar
Copy link

The Craft.js project hasn't been updated since August. Are you certain it's still active?

@LiveDuo
Copy link
Owner

LiveDuo commented Jan 11, 2023

@brunonar Quite late response but it's for everyone's visibility.

There's a PR on 7/12 from @prevwong. Yet, I'm not certain Craft.js will remain active. Many projects including Craft.js(AFAIK) are maintained by a single engineer. That means he might go offline for a while as stuff happen.

But, Craft.js ticks all the boxes mentioned by @iojcde in this issue. It also adopted by quite a few people and there's a fair chance another maintainer comes by or someone's forks the project off.

Moving forward, I think it will be aright whatever the case. Besides, Craft.js unlike Grapes.js is a thiner layer that manages the viewport and component state (redo/undo, serialisation etc) and it easier to replace or replicate if needed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants