HTML All The Things - Web Development, Web Design, Small Business

Developing with Vue.js, Node.js, and MongoDB


Listen Later

We've been hard at work, learning a new development stack on which the HTML All The Things website is built.

Note: Matt is on vacation for 1.5 weeks, this episode has been pre-recorded before his departure, some things that were discussed may have a different status (hopefully complete) upon the release of the episode.

Segment 1 - VueJS Frontend Development

  • Due to the nature of VueJS, we spun up an entirely new development environment
  • Switching from Notepad++ to Visual Studio Code w/ the Vetur plugin
  • Some of the most valuable/used parts of VueJS that we used include:
    • Components - are like small pieces that makeup the website, placed in separate files and used over and over again, can be imported into each other (component inside a component)
  • Scoped Stylesheets - limit the styles you're applying to the file you're writing them in, we limited many styles to specific components, allows you to use the same classnames and ids with completely different properties
  • Dynamic data was the most challenging part of using VueJS, not from a technical perspective, but more so from a procedural standpoint - not used to having them as apart of my workflow
  • Vuex, Vue Router, Axios
    • Vuex is a state management solution in vue that allows all components to share data between each other
  • We use it for storing our loggedIn status for our editing content
  • Vue router is used for handling any routes so that we can navigate around our site
  • Segment 2 - Nodejs and MongoDB Backend Development

    • Nodejs
    • Used as our server to serve webpage content from the Mongo Database and store content in the mongo database
  • The server has be handle many calls to it that request things like:
    • Get all content
  • Get content of a specific type
  • Add content of a specific type
  • Delete content
  • Authentication
  • These are standard server requests but still took some time to setup as we’ve never hooked in vue.js into Node, usually use the built in templating engines
  • MongoDB
    • A alternative to sql that stores objects in json blocks
  • Has great hookins into Nodejs using the Mongoose package
  • Used to store our content block data and  admin user account for editing the site
  • Had to implement mongo admin and database users so that even if our site is hacked they can’t delete or modify the entire mongo database
  • Segment 3 - Digital Ocean and Docker Deployment

    • Digital Ocean provides a vps with an already installed Docker instance.
  • Docker is a way to create small virualizable containers for each technology in your stack
  • In our case we used docker to create 3 containers:
    • Nginx - serve static files and proxy routes to Nodejs server
  • Nodejs - run our server infrastructure
  • MongoDB - runs our mondodb server that communicates with Nodejs
  • Had to learn how to create a docker compose file which is a configuration file for building your containers together and letting them know how to communicate
  • Everything is launched and built through a SSH into your digital ocean server. You have to be familiar with using a Command Line Interface (CLI)
  • Web News - Wrapping it Up

    In this Web News we had a discussion regarding our current status (at the time of recording) in the development of the HTML All The Things website, as well as what to complete for deployment.

    ...more
    View all episodesView all episodes
    Download on the App Store

    HTML All The Things - Web Development, Web Design, Small BusinessBy Matt Lawrence and Mike Karan

    • 4.8
    • 4.8
    • 4.8
    • 4.8
    • 4.8

    4.8

    46 ratings


    More shows like HTML All The Things - Web Development, Web Design, Small Business

    View all
    Software Engineering Radio - the podcast for professional software developers by se-radio@computer.org

    Software Engineering Radio - the podcast for professional software developers

    274 Listeners

    The Changelog: Software Development, Open Source by Changelog Media

    The Changelog: Software Development, Open Source

    284 Listeners

    iOS Today (Audio) by TWiT

    iOS Today (Audio)

    543 Listeners

    Talk Python To Me by Michael Kennedy

    Talk Python To Me

    590 Listeners

    Software Engineering Daily by Software Engineering Daily

    Software Engineering Daily

    621 Listeners

    Soft Skills Engineering by Jamison Dance and Dave Smith

    Soft Skills Engineering

    269 Listeners

    Python Bytes by Michael Kennedy and Brian Okken

    Python Bytes

    215 Listeners

    Y Combinator Startup Podcast by Y Combinator

    Y Combinator Startup Podcast

    217 Listeners

    Syntax - Tasty Web Development Treats by Wes Bos & Scott Tolinski - Full Stack JavaScript Web Developers

    Syntax - Tasty Web Development Treats

    987 Listeners

    REWORK by 37signals

    REWORK

    211 Listeners

    The Stack Overflow Podcast by The Stack Overflow Podcast

    The Stack Overflow Podcast

    62 Listeners

    The Real Python Podcast by Real Python

    The Real Python Podcast

    139 Listeners

    AI and I by Dan Shipper

    AI and I

    32 Listeners

    Lightcone Podcast by Y Combinator

    Lightcone Podcast

    22 Listeners

    OpenAI Podcast by OpenAI

    OpenAI Podcast

    28 Listeners