Last year I wrote a simple application to keep track of some events I completed. It’s kind of a ‘ledger’ that stores info about books and films in the MongoDb. The application is implemented as a SPA with the node.js in back-end and Angular2 in front. Recently, I decided that Angular2 is too ‘heavy’ for such a simple project, so I rewrote front-end on Vue.js. In addition, I added the ability to share data between users.
Probably there could be several points of interest I want to share:
- JWT authentication (so far the token is not refreshing).
- Google’s reCaptcha in a Vue.js component.
- Two-ways binding (v-model) in a custom component (DateInput).
- Using ‘vuelidate’ package for validation.
- Moving all angular services and async operations to vuex’ store.
- Keeping back-end and front-end in two separate npm projects but in one git repo.
When building application for production, the files, produced by webpack, are copied to the public folder on back-end. Then I commit the changes into local repo and deploy the back-end part on heroku. In dev mode my backend is hosted locally (with enabled CORS).
To do: Planning to add progress indicator: considerable delays, when heroku is waken up from the sleep.
Please excuse my poor design. I’m not much of a designer )
Thanks for feedbacks.