haltu / muuri

Infinite responsive, sortable, filterable and draggable layouts
https://muuri.dev
MIT License
10.77k stars 644 forks source link

Questions on future versions #470

Open thednp opened 3 years ago

thednp commented 3 years ago

Man I love this. I can't believe I've forgot/ignored it. So delightful and organized code.

I have some questions:

Thanks for any reply :)

niklasramo commented 3 years ago

Man I love this. I can't believe I've forgot/ignored it. So delightful and organized code.

Thank you so much 😊 A lot of time, effort and love has been poured into this lib so comments like these make it worth the while.

Is it possible to create a MuuriLite version to exclude Packer and all about dragging features?

I don't think we'll be creating a "lite" version, but it definitely makes sense to make the core of Muuri only care about the main thing, which is layout, and have all the other features be plugins/extensions. This is high on the priority list. At the moment I'm actually working on extracting all the drag n' drop functionality in Muuri into a completely separate library, which should be extremely helpful in any project which needs drag n' drop functionality.

Do you guys have plans to do an ESLint valid ES6+ code base update in the future?

The next version of Muuri is written fully in TypeScript, you can see it in the dev branch. It's actually in pretty good shape already.

Would you guys consider creating a simple API Interface to enable easier initialization?

Making Muuri as easy to use as possible is always high on the priority list, but I'm not sure what you mean specifically. I think a Muuri web component could be its own library and repo perhaps.

Tragio commented 2 years ago

@niklasramo thank you for your awesome job!! I saw that you updated the dev branch a few weeks ago. I would love to know if you have any ETA for it. πŸ˜ƒ

niklasramo commented 2 years ago

@Tragio Thanks 😊 There's no ETA yet, unfortunately. I'm dedicating around a day or two per month currently on the development and focusing on making Muuri smaller, more modular and tree-shakeable.

Most of that progress is not visible in ths repo yet as I'm building the new drag and drop system in it's own repo (as it's going to be an isolated library for generic use too), which is currently private.

Tragio commented 2 years ago

@niklasramo really thank you for your awesome work πŸ™ is there anything we can do to contribute?

niklasramo commented 2 years ago

@Tragio Muuri definitely needs and deserves more core contributors than me, but at the same time it's hard for me to think how to best onboard new core contributors. Muuri's codebase is rather large and it takes some time to grasp, and at the same time it's in flux as I'm trying to modularize with the best of my capabilities.

I don't know how people feel about the docs at the moment, which are in the repo's README. I suppose it would serve Muuri well if at some point we built proper docs site with lots of examples. That's something I'd love love to have some help with as I'm currently deep in the code and will be here for some time.

As for the dev branch progress I'm past midway in the modularization task:

There's still a lot of work ahead though:

All in all, a lot of stuff has been done and a lot of stuff still ahead πŸ‘

Tragio commented 2 years ago

@niklasramo you're fantastic!! Thank you for taking the time to work on it and for such a reply. There is nothing close to Muuri!

I was thinking of creating a PR for the docs website based on Docus, would it be ok for you? πŸ˜„

niklasramo commented 2 years ago

@Tragio PR for Docs sounds awesome and is more than welcome! Thank you πŸ™

muuri.dev is currently hosted on github via gh-pages branch and we could host the docs there also if needed. Another viable option is that we/you host the docs site on Vercel (or some other alternative) and point docs.muuri.dev to there. Let me know if there's anything I can help you with to get you started πŸ™‚

As for the repo, I can make you a member of Muuri organisation and you can create a repo for the docs there, or we can use the gh-pages branch, or you can just create the repo wherever you deem best.

Tragio commented 2 years ago

@niklasramo thank you for the collaboration!! I had a little time after dinner and I converted it all to VitePress (which is really simple for someone to collaborate with). I'll clean everything and as soon as I have it all nicely, I'll create a PR, and then we can discuss the best approach to publish it πŸ˜„

It already feels much better to look to the docs like this 🀀

CleanShot 2022-09-01 at 22 49 16

PS: Maybe you can already sign up for https://docsearch.algolia.com/ so we can also configure it.

niklasramo commented 2 years ago

@Tragio Looks awesome 🀩 and indeed 10 x better than the current version. I especially love the fact that there is a version switch in the top right corner! If we can maintain different docs for different versions (starting from the current version) somewhat easily that would be very useful for Muuri users.

I checked out the Docsearch application process at https://docsearch.algolia.com/docs/who-can-apply/ and it seems they expect the docs site to be live before one applies? I wonder if they'll reject Muuri's application ir the docs site is not yet live, should I still try? I was thinking that we could use docs.muuri.dev for the docs website.

P.S. I created a separate issue for docs -> https://github.com/haltu/muuri/issues/525, let's continue conversation there :)

clurect commented 1 year ago

@niklasramo is DragDoll integrated into Muuri yet? I was really into Muuri until I hit a spot where I wanted to drag multiple grid cards. I might be able to help out, but it might take me time to understand it all!

This is great stuff you've made!

niklasramo commented 1 year ago

@clurect not yet, but hopefully soon :) DragDoll's API is in a pretty good state, but there are a bunch of tests and docs to write. If you're interested in helping out I can ping you when DragDoll is ready to be used in Muuri and I can help you make sense of the codebase if needed.