Duane Blake Youtube Gallery using VueJS

Created by Duane Blake last modified
<!DOCTYPE html>
<html lang="en">
	<meta charset="UTF-8">
	<title>YouTube Video</title>
	<style type="text/css">
		body{ background:#f4f4f4;}
		#container{max-width:960px; margin: 0 auto; font-family:arial;}
		ul{display:flex; flex-flow:row wrap; padding:0; align-content:space-between;}
		li{width:31%; margin-right:2%; list-style:none; margin-bottom:30px; background:white; border-radius:3px; padding:10px;}
		p{font-size:15px; min-height:40px;}
		a{color:#2793da; text-decoration:none;}
		a:hover{color:#333; text-decoration:underline;}
		.thumbnail{border: 1px solid #fcfcfc; padding:2px; width:100%; height:auto;}

	<div id="container">

		<template id="videos-template">
				<li v-for="video in videos">
					<p> <a href="{{video.snippet.resourceId.videoId}}">{{ video.snippet.title }} </a></p>
					<a href="{{video.snippet.resourceId.videoId}}"><img src="{{video.snippet.thumbnails.medium.url}}" alt="{{video.snippet.title}}" title="{{video.snippet.title}}" class="thumbnail" /></a>
	</div><!-- #container -->	
	<script src=""></script>
	<script src=""></script>
		Vue.component('gallery', {
				template: '#videos-template',
				data: function(){
					return {
						videos: []
				created: function() {
				methods: {
					fetchVideoList: function(){
						this.$http.get('', function(videosList){
							this.videos = videosList.items;

		new Vue({
			el: 'body'

Comments (2)

  1. Ellen Hennry

    A modified version of the official YouTube app was released in and is known as Manager of YouTube Vanced. Installing such files on Android phones and understanding the APK format were difficult tasks, particularly for non-techies. Therefore, the same developers' Vanced Manager steps in to save the day.

  2. Lyly

    Pokerogue brings a fresh twist to the Pokémon franchise, combining the beloved aspects of capturing and battling Pokémon with the thrilling unpredictability of roguelike games.


You can clone a snippet to your computer for local editing. Learn more.