[RFC] Vue 3 & vuex-easy-firestore version 2
mesqueeb opened this issue · 7 comments
I am planning to update the library to version 2, once Vue 3 and the next Vuex are released!!
For v2 I will focus mainly on:
re-writing my architecture to be more modular ‼️
If the library is more modular, vuex-easy-firestore will:
- ... have much better readability 👀
When I make a modular system, the dev would have to import the actions they need inside their app. This makes it much easier to see what all the actions are your vef-module actually can do. Eg.:
// pokemonModule.js
import {
vuexEasyFirestoreModule,
set,
insert,
patch,
delete
} from '@vuex-easy-firestore/core'
export default vuexEasyFirestoreModule({
// the usual setup
firestorePath: 'pokemen',
firestoreRefType: 'collection',
}, {
// then import only what you need
actions: {
set, insert, patch, delete
},
})
-
... have a smaller footprint 🐾
Keep the core code as small as possible & have better treeshaking support. As you can see in the example above, only the actions you only want to use will be imported! This will make your modules much cleaner!!! -
... become VERY powerful through plugins 💪
Extra functions that not everyone needs can be implemented as a plugin.
Eg.
// pokemonModule.js
import { vuexEasyFirestoreModule, set } from '@vuex-easy-firestore/core'
import { automaticCounter, duplicate } from '@vuex-easy-firestore/plugins'
export default vuexEasyFirestoreModule({
firestorePath: 'pokemen',
firestoreRefType: 'collection',
// automaticCounter could enhance your module with automatic counters
automaticCounter,
// duplicate could be a custom action to duplicate docs in your collection
actions: {
set,
duplicate
},
})
- ... support custom & COMMUNITY plugins 🎉
If I make the plugin source code & documentation easy to understand, everyone could easily create their own plugin and have it featured on the official docs!!
Tell me what you think!!
I'm interested to hear any opinions and ideas for the next version!!!
Please also see the list of planned features (regardless of version 1 or 2)
--
Vuex Easy Firestore was made with ♥ by Luca Ban.
If this library helped you in any way you can support me by buying me a cup of coffee. ☕️
You can also reach out on twitter if you want a one-on-one coding review/lesson. 🦜
Well, I think you are doing an amazing job! thank you for the effort!
It's a great library! I bought you a coffee, thanks for working so hard on it!
I think for v2, I'm mostly looking for good Typescript support: ie play nice with the upcoming new Vuex and Vue 3 release.
After about two years of open source, I finally got accepted for Github Sponsors!
💜 github.com/sponsors/mesqueeb 💜
A little about me:
- I love open-source
- 6 months ago I got a son, and am trying to be an awesome father 😅
- I'm doing freelance work here and there as my main job
If anyone was helped with vuex-easy-firestore, I'd greatly appreciate any support!
BTW, donations get's paid DOUBLE by GitHub! (they're alchemists... 🦾)
I got great plans for the future of vuex-easy-firestore going above and beyond!! Look forward to it!!
On to many more years of open-sourcing! 🎉
Hey and thank you for your work with this package. I was just wondering if a v2 is still on the horizon? :)
@tormjens you bet ya!! I'm pretty much done, but still need to work on documentation and other details.
I'd love some feedback from some seasoned devs!
can you discuss on Discord? I emailed you with my discord tag : )
Hey @mesqueeb, awesome job with this package!!! I was just wondering how the vue3 version is progressing and if its still on the table. I would love to try it out on a new vue3 project. Either way, awesome job with the current version - you are amazing :)
Hey @mesqueeb, awesome job with this package!!! I was just wondering how the vue3 version is progressing and if its still on the table. I would love to try it out on a new vue3 project. Either way, awesome job with the current version - you are amazing :)
I agree, would love to know how far along the process of updating is, or if you have some kind of working version already? @mesqueeb