MEAN Stack – Prepare the Build Package for Deployment – Day 30
The MEAN Challenge Continues!
This video is part of the 30 Day MEAN Stack Honolulu Challenge
In this video we’ll prepare our mean.js app and get it ready to deploy!!
We look at:
– Using the Grunt Build command to create our application files
– Setting up a new MongoDB for production
– Hooking our new MongoDB instance in our production file
– Commit our file changes using Git
Woohoo now we’re ready to deploy!
Category: Mean Stack, MEAN Stack Challenge
possible to show how to deploy to a VPS like linode?
maybe even going through a server setup and adding mongodb?
Hi, I’m ready to deploy my site to Heroku and wanted to know how to do so if not using Web-Storm. You mentioned it in Video 30 but I have not seen the instructions in earlier post’s.
Hi there, thanks for checking out the videos.
Here’s a link to the Heroku video: https://bossable.com/754/mean-stack-deploy-heroku/
Here are instructions for deploying with Git: https://devcenter.heroku.com/articles/git
Once you have your files committed to git, web-storm isn’t really doing anything as part of the deployment process so it’ll be more or less the same with any command line utility.
Hey thank you Shristi for the detailed reply and taking the time to provide a very clear example, really appreciate it, I will try modifying the existing CRUD query as suggested for starters. For role based logic I saw there’s a node acl module out there https://www.npmjs.org/package/acl and thought about using that for some of the application based role logic but still struggling really on how to incorporate that into the meanjs structure. But I will keep you updated if I make any progress though. Thanks again.
Thank you for the webcast series Shristi, the energy and enthusiasm in which the webcasts were presented was amazing. I’m normally on my nth cup of coffee and battling to stay awake when watching webcasts from other paid tutorial sites but I managed to get through the entire series in two days and the hours literally just flew by , I really enjoyed it!
I’m trying to add a new crud module but I want the items a user adds to only be viewable by that user or an admin level user. Do you think that would be doable with the MEANJS stack and could you give me some pointers on how to achieve that if so.
Thank you again for the awesome series of posts.
Hey Steve, thanks for checking out the videos! It’s great to hear that you enjoyed them too.
There are a few different ways to show records to specific users. You mentioned the record creator, and admin, so you may also need to look into setting up user roles.
I started writing out some pseudo-code but it looked too confusing. The key things I’d do:
1. Have a look at $resource, and adding a custom query on the Angular side (make changes to the Controller and Service files).
2. Look at calling a server route using $resource (within the Service, and the Server Route)
3. Have a look into MongoDB queries.
If you want to start slowly, maybe start with number 3 using the existing CRUD query in the server controller file for your CRUD module and change it up, just to see how it would work.
Here’s an example to help you get started:
exports.myItems = function(req, res) {
var thisUser = mongoose.Types.ObjectId(req.param(‘userId’));
Items
.find({
user: thisUser
})
.sort(‘-created’)
.populate(‘user’, ‘displayName’)
.exec(function(err, items) {
if (err) {
return res.status(400).send({
message: errorHandler.getErrorMessage(err)
});
} else {
res.jsonp(items);
}