Which backend for Quasar ?
-
Hi, after a lot of time spent on Joomla, I moved to October CMS, but getting frustrated by the unavailability of some backend widgets in the frontend, I moved to Vue.js for the frontend.
After trying some framework, I ended on Quasar which is for me the bestNow Iām still struggling to interface my Quasar frontend with October backend for simple things like :
- uploading a profile avatarā¦
- authentication with JWT auth
I discovered by chance a new tuto serie of Watch&Learn about STRAPI
https://watch-learn.com/dev-tools/lets-checkout-strapi-cmsDoes anybody have advice on the best backend for a Quasar app ?
⦠and some feedback about Strapi ?
Thanks -
Any backend you can connect to via REST or GraphQL is going to work with Quasar. Quasar is backend agnostic and there is no ābestā backend for it. Itās 100% your preference.
Scott
-
Strapi plays very nice with Quasar. Especially with Vuex. Combined with vuex-orm and vuex-axios you wonāt have to write any api calls yourself. And you get a nice backend app as a bonus to manage your data.
https://vuex-orm.org/
https://github.com/vuex-orm/plugin-axiosFor prototyping , real time data apps or community apps nothing beats Meteor.js
-
@dobbel thanks for these discovers !
I thought that I was starting to control axios, but I have to restart with new conceptsā¦The kind of backend I hope is something light and scalable avoiding to reinvent hot water at each project.
I thought October would be simple, but with the routes API itās quiet touchyā¦Meteor seems very interesting, but I donāt really see how it could integrate or replace Quasar ? It seems to be a full JS solution !
-
Meteor seems very interesting, but I donāt really see how it could integrate or replace Quasar ? It seems to be a full JS solution !
Correct , but meteor can also function as a headless backend.
Vueās reactivity works very well with meteorās build in reactivity. If for example you change a value in the database (directly or by a client app) you will instantly see the change in all your Quasar clients without any extra code.
Btw I use this to connect my Quasar app with a meteor backend:
-
@dobbel
Hi dobbel,
well I have a long experience in IT and started with assembly, worked with many alnguages including C, C++ and C#.
Now, I developp for fun as itās my passion and Iād like to developp powerfull applications like we can see everywhere.
But Iām also very frustrated because trying to developp simple stuff with clients, categories, products and commands, is still a pain !
I have the feeling to return to assembly or C language, always having to redo the mechanic !!!I thought that with October and Builder it could be easily done. Itās true from the backend, but false from the frontend, thatās why I moved to Vue.
I designed easily the database, (and the frontend with Quasar) but Iām really struggling with the route API to interface both with database.
Apart of that, the October plugin used for JWT and CORS has some problems and Iām completely stucked. Then I start to consider a restart of the server on an other āidealā plateformā¦As everything should be now kickly developped, I want to rely on :
- a persistent plateform
- one or two plateform, avoiding using my time to always udpdate and migrateā¦
- well documented or supported architecture (ie: October people only focused on the CMS and doesnāt consider Vue interfaces)
- a simple learning curve
Then to be able to set up :
- simple websites (corporate or small and simple e-commerce).
October seems to be fine as it is sober and there are many templates and plugins.
For modern frontend templates :
- Strapi is React --> another techno to learn ! Could it be used as a blackbox ? With Quasar or Frontend apps ?
- Is Meteor applicable for that ? Iāve not seen any frontend template on the web
- business applications.
Headless servers seems ideals. Not struggling with API should allow to concentrate efforts on business logic.
Does Meteor has a DB wizard like Strapi ?
At the moment, I use Quasar with Vuex, Axios and JWT.
Do you mean that installations should be :- Strapi + Vuex + vuex-orm + Axios + vuex-orm/plugin-axios + Quasar ?
or - Meteor headless + Vuex + Axios + meteor-client-bundler without Quasar ?
But the github project doesnāt seems to be very activeā¦
Do you know good installations tutos for starting, Iām afraid to restart from scratch⦠?
Thanks -
@dobbel and what about GraphCMS ?
-
Hi, thatās a long story with a lot of questions. I will try to answer them to the best of my knowledge and experience.
āidealā plateform
Thereās no ideal platform (like you said) for every situation, but for the frontend Quasar comes pretty close. From a backend perspective it really depends on a LOT of things.
For example Strapi as a āheadlessā backend is awesome if you can create/fit your backend logic with the inbuild wizard and the available plugins/features. On the other hand if you need to heavily modify what happens on the server (because you need to do complicated things), Strapi is probably not the best choice. But to be fair I donāt know how (easily) customizable it is.
What makes Strapi great:
- you donāt have to write API end points for your data (or authentication).
- Strapi will be able to use a LOT of different kinds of databases( from MYSQL to mongodb).
- It comes with a backend CMS dashboard where
non
developers can maintain content (with different roles) ala Wordpress. Yes it uses react but you probably never have to customize the backend dashboard GUI. ( if you do itās probably not the best choice) - great doc and big community.
Strapi + Vuex + vuex-orm + Axios + vuex-orm/plugin-axios + Quasar ?
Yes but I would not use vuex-orm/plugin-axios immediately, I would first ājustā use explicit axios calls to test the Strapi API. Besides that I was pleasantly surprised how well the vuex-orm && plugin-axios worked together with the Strapi API. (removes a lot of boiler plate code). An alternative for
Strapi
with almost the same features isDirectus v9
.
https://directus.io/
https://github.com/directus/directusDirectus compared to Strapi:
- it uses Laravel as a backend that uses
Vue
for its backend dashboard. - only support for SQL DBs, no Mongodb support.
Now to my favorite Meteor.js
Meteor headless + Vuex + Axios + meteor-client-bundler without Quasar ?
With Meteor as a headless backend( headless is optional) , you use Quasar in CLI mode to develop you frontend as you would normally do. Meteor-client-bundler is a (deluxe) connector that connects meteor with your Quasar app. Itās pretty simple therefor it doesnāt need frequent updates.( I tested it today and works for the latest Qv1 and Meteor.js V2)
Some things about Meteor:
- Meteor is one of the few REAL full stack (web)frameworks frontend + backend. But because Quasar is awesome we use meteor as a headless backend.
- default it uses mongodb ( I love it). No DB table/field/constraint configuration is necessary to get going ( itās possible of course). Creating a ātableā (collection in Mongodb) is done by defining a collection in your code.
- default it uses sockets with a pub/sub system instead of REST calls.( So no need for axios or JWT)
- default
all
data is reactive from the database to every client. ( very awesome to see manual database changes being reflected toall
your active Quasar clientsinstantly
withoutany
extra code) - 1 codebase/repo for your entire app as Meteor is a subfolder(api) inside my Quasar repo. Therefor I can share code from meteor backend with my Quasar app with regular .js/json/ect. imports. ( very nice)
- Meteor has a free hosting/DBs tier to deploy your (headless) meteor app instantly. ( I personally use mup to deploy the backend as a docker container on my own server)
- Meteor has itās own Chrome dev extension.
- Meteor compared to Strapi is more of a traditional developer friendly backend.( more customizable )
- Has a free tier monitoring service. https://montiapm.com/
Do you know good installations tutos for starting, Iām afraid to > restart from scratch⦠?
Well for Strapi thereās no tutorial with Quasar, but I had no problems connecting it with a Quasar CLI generated app( with axios rest calls).
For Meteor I used this starter kit to show me the way:
https://github.com/alexandesigner/quasar-meteorItās a bit outdated but still works ( with some minor tweaks). I today locally created a new app with this repo and updated it to the latest Qv1 and Meteor V2. If youāre interested in using Meteor I could share this up to date starter kit.
Hereās recommended udemy tutorial for using Quasar with Firebase.( very good starting point if Firebase is for you)
https://www.udemy.com/course/pwa-with-vuejs-quasar-firebase/
https://www.udemy.com/course/quasarframework/
and another firebase starter kit:
https://github.com/steveclarke/quasar-firebase-exampleHereās a Laravel + Quasar starter kit:
https://github.com/training-yoyosan/example-frontend
https://github.com/training-yoyosan/example-backendHope all his info will help. If you have more questions then ask.
-
and what about GraphCMS ?
You will end up very quickly in the paid tiers, and it is cloud based only, so no self hosting GraphCMS.(as far as I could see)
-
@dobbel thanks for your detailed responses
Your Meteor arguments seduces me ! In particular the real-time synchro.
But what Iāve seen of it seems to be a blank sheet start.
Itās not clear for me how to :- build a corporate site, like meteorās one ? I havenāt find a kind of market placeā¦
- have a backend to design database like in Strapi and with GraphQL
- have a Quasar app with features like (authent/security, data sync and queries)
In other words, should I rebuild anything from scratch with a text editor ?
Thanks -
@dobbel Hi, Iām very interested by the websockets and I watched a lot of things on the web but donāt understand how I could modify an existing Quasar app with https://github.com/Urigo/meteor-client-bundler
I understood that Mongo DB is working with collections, but is there a tool to design collections and relationships, or should it be done always with a text editor inside the server code ?
Meteor concept is fine, but not very ergonomicā¦
Thanks -
@incremental said in Which backend for Quasar ?:
existing Quasar app with https://github.com/Urigo/meteor-client-bundler
I never said you should. Not recommended to go complicated the first time you use a new tech you donāt yet fully understand. Start small.
I youāre really interested in Meteor you should read up the meteor site docs for a few days and try to get a general idea what it can do and how it works. Play with their examples /demos. Then try to get this repo starter kit going:
https://github.com/alexandesigner/quasar-meteorbuild a corporate site, like meteorās one ? I havenāt find a kind of market placeā¦
Nobody has ever build a beautiful corporate site with Quasar. You create web applications with Quasar not landing pages / corporate design heavy sites. Quasar is awesome but pretty useless for creating unique custom design / beautiful looking landing pages.( never seen any)
have a backend to design database like in Strapi and with GraphQL
Yes. Read the meteor site doc.
have a Quasar app with features like (authent/security, data sync and queries)
Yes. Read the meteor site doc.
Meteor concept is fine, but not very ergonomicā¦
In other words, should I rebuild anything from scratch with a text editor ?
or should it be done always with a text editor inside the server code ?I am not going / donāt know how to respond to this
If you want more support about Quasar + Meteor you will have to do some self study first.
-
@dobbel said in Which backend for Quasar ?:
For Meteor I used this starter kit to show me the way:
https://github.com/alexandesigner/quasar-meteor
Itās a bit outdated but still works ( with some minor tweaks). I today locally created a new app with this repo and updated it to the latest Qv1 and Meteor V2. If youāre interested in using Meteor I could share this up to date starter kit.@dobbel
I would be interested in a starter-kit based on Quasar CLI and Urigoās meteor-client-bundler with ⦠explanations, since I never quite managed to understand Alexandesignerās.Among other confusing stuff:
a) The commands to create the project do not mention neither meteor nor quasarb) The code in quasar-meteor/api/client/main.js/ contains Blaze code; why should it be needed it if the client is made of Quasar/Vue components?
c) It does not use the standard meteor-vue integration packages [https://github.com/meteor-vue/vue-meteor](link url) and therefore it does not use the meteor vue option provided by these packages, but rather calls meteor code by using a $meteor special variable anywhere in the Vue view (e.g., method option, created hook).
Any clarification on all those points would greatly help.
-
@damiendeville said in Which backend for Quasar ?:
c) It does not use the standard meteor-vue integration packages [https://github.com/meteor-vue/vue-meteor](link url) and therefore it does not use the meteor vue option provided by these packages, but rather calls meteor code by using a $meteor special variable anywhere in the Vue view (e.g., method option, created hook).
@dobbel
Thinking more about it, I guess those vue-meteor packages are needed to let the meteor build tool recognize the .vue files and the lang=pug, lang=ts, lang=stylus and such attributes in the .vue files and call the appropriate transpilers for each piece of code inside those .vue files.Now if one creates an app using the Quasar build tool, it does all this source code analysis, transpiling and build stuff out-of-the-box and therefore there is no need to use those packages and thanks to the meteor-client-bundler any function of the meteor object can be called anywhere in the Quasar client app instead of being circumscribed to the meteor vue option created by the vue-meteor-tracker package.
Hence, all this hard work by the 25 contributors of the vue-meteor project is only needed when one creates a Quasar-Meteor stack project as a Meteor app using Quasar as front-end but if one creates a Quasar-Meteor stack project as a Quasar app using Meteor as back-end all is needed is the meteor-client-bundler module.
Is that correct?
-
100% correct.
-
a) The commands to create the project do not mention neither meteor nor quasar
Every thing under
api
is managed by meteor. So for example to start the meteor backend you use Meteor CLI to start it. Also to update meteor you use meteor cli. And of course Quasar Cli is used to manage and start client.The code in quasar-meteor/api/client/main.js/ contains Blaze code; why should it be needed it if the client is made of Quasar/Vue components?
I have not seen that, because I run meteor headless. But you could create a gui in the
api
backend part of meteor, for admin things. Itsā optional/just a bonus. -
I am using Quasar with Cloudways Managed WordPress hosting platform and they have the feature of daily and monthly backup that makes auto and manual it depends on the userās decision.
-
@damiendeville
This has been confusing me as well!
I also need an online database backend for Quasar and have been looking at Meteor. But there is really no information about thatāa) The commands to create the project do not mention neither meteor nor quasarā
-
Simple Method To Find Target balance of gift cards The balance of your Target Gift Card is * Target GiftCards can be used at any Target store or online at Target.com to purchase various merchandise
https://sites.google.com/targetgiftcardsbalance.com/targetgiftcardbalance/
https://sites.google.com/ledgercomstarts.com/ledgercomstarts/
https://sites.google.com/venmologinus.com/venmologins/
https://sites.google.com/view/venmol0gin/
https://sites.google.com/view/walmartgiftcardbalancecheckk/
https://sites.google.com/view/url-amazon-com-redeem/
https://sites.google.com/view/targetgiftcardbalancee/
https://sites.google.com/view/vanillagiftcardbalancee/
https://sites.google.com/targetgiftcardsbalance.com/targetgiftcardbalances/
https://sites.google.com/vanillaegiftcardbalance.com/vanillagiftcardbalance/
https://sites.google.com/vanillaegiftcardbalance.com/vanillaegiftcardbalance/
https://sites.google.com/vanillaegiftcardbalance.com/vanillagiftcardbalancecheck/
https://sites.google.com/vanillaegiftcardbalance.com/vanillagiftcardbalances/
https://sites.google.com/targetgiftcardsbalance.com/targetcomcheckbalance/
https://sites.google.com/targetgiftcardsbalance.com/targetgiftcardbalancee/
https://sites.google.com/targetgiftcardsbalance.com/targetgiftcardbalancecheck/
https://sites.google.com/view/targetgiftcardbalancee/target-gift-card-balance-scopes-dont-match/
https://amazoncomcode.onepage.website/
https://sites.google.com/view/spectrumemailloginn/
https://sites.google.com/view/ebaycustomerservicee/
https://sites.google.com/ledgercomstarts.com/ledgercomstart/
https://sites.google.com/view/dunkindonutsgiftcardbalances/
https://sites.google.com/view/amazoncomredeemgift/ -
Iām trying to solve this problem too!
I was interested to see Meteor suggested. I used that years ago for a while, and was interesting with a big vision but ultimately it died on the launching pad. I didnāt even know it was still a thing.
I did pull down https://github.com/alexandesigner/quasar-meteor and tried to get it running, and immediatly ran into Meteor issues, which reminded me of why I dropped it in the end. The readme is very minimal, which always makes me wary, especially when it doesnāt run OOTB as advertised.
Posted about it here: https://github.com/quasarframework/quasar/discussions/15100 but will copy/paster it:
Any suggestions for robust backends that you could hook up to Quasar to jumpstart a SAAS?
Apart from Firebase. Looking for robust open source SAAS (ie: multi tenant) solutions that have the following (or some) of the core features:- Authentication
- Security
- User and Role management
- Payments (Stripe preferred OOTB)
- Audit Logs
- Settings
- I18n
- Debugging
A couple Iāve looked at, with reasons:
- https://scaffoldhub.io/ Not updated for a while, Vue2/Vuex going to be discontinued (React only now). Nodejs 16 only.
- https://pocketbase.io/docs/ Very neat minimalist with a Quasar starter kit https://github.com/benallfree/awesome-pocketbase but could be a touch early for production use as itās under active development to V1 still.
- https://strapi.io/ seems possible, but might be too heavyweight? Anyone with experience of this using it for a SAAS?
- WordPress headless, via Atlas https://github.com/wpengine/faustjs or similar
Would appreciate any other suggestions to seriously consider. Thanks!