Reupload Video AI - Effortless Video Management App
About this app
Reupload Video AI allows users to manage, edit, and easily reupload videos with AI suggestions. Optimize your video files with fun and colorful UI.
Reupload Video AI - Effortless Video Management App Reupload Video AI Upload Videos
Related apps
Put this on your site
Source
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Reupload Video AI - Effortless Video Management App</title>
<meta name="description" content="Reupload Video AI allows users to manage, edit, and easily reupload videos with AI suggestions. Optimize your video files with fun and colorful UI.">
<meta name="keywords" content="video management, video editing, AI, Reupload">
<!-- Libraries -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js" crossorigin="anonymous"></script>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" crossorigin="anonymous">
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.min.js" crossorigin="anonymous"></script>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@6.6.0/css/fontawesome.min.css" crossorigin="anonymous">
<script type="text/javascript">
try {
// App Javascript Goes Here. Place your entire script content inside the try block for error handling.
let videoList = [];
// This will run when the DOM is ready.
document.addEventListener("DOMContentLoaded", function () {
const videoInput = document.getElementById("videoInput");
const videoListContainer = document.getElementById("videoList");
const uploadButton = document.getElementById("uploadButton");
uploadButton.addEventListener("click", function () {
const files = videoInput.files;
for (let i = 0; i < files.length; i++) {
const file = files[i];
const reader = new FileReader();
reader.onload = function (event) {
addVideoToList(file.name, event.target.result);
}
reader.readAsDataURL(file);
}
});
function addVideoToList(videoName, videoSrc) {
videoList.push({ name: videoName, src: videoSrc });
renderVideoList();
}
function renderVideoList() {
videoListContainer.innerHTML = ""; // Clear previous entries
videoList.forEach((video, index) => {
const videoItem = document.createElement("div");
videoItem.className = "col-md-6 my-2";
videoItem.innerHTML = `
<div class="card">
<video controls class="card-img-top" src="${video.src}" style="height: 200px;"></video>
<div class="card-body">
<h5 class="card-title">${video.name}</h5>
<button class="btn btn-danger" onclick="removeVideo(${index})">Remove</button>
</div>
</div>
`;
videoListContainer.appendChild(videoItem);
});
}
window.removeVideo = function (index) {
videoList.splice(index, 1);
renderVideoList();
}
});
} catch (error) {
// This will throw the error to the parent window.
throw error;
}
</script>
<style>
body {
background: linear-gradient(to right, #ffafbd, #ffc3a0);
color: #333;
}
#main-container {
margin-top: 30px;
}
.btn-primary {
background-color: #6a0572;
}
.btn-danger {
background-color: #d9534f;
}
/* Responsive video */
video {
max-width: 100%;
border-radius: 5px;
}
.card {
border-radius: 15px;
border: none;
box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
}
</style>
</head>
<body>
<div id="main-container" class="container">
<h1 class="text-center">Reupload Video AI</h1>
<div class="text-center mb-4">
<input type="file" id="videoInput" multiple accept="video/*" class="form-control d-inline-block w-50">
<button id="uploadButton" class="btn btn-primary">Upload Videos</button>
</div>
<div class="row" id="videoList"></div>
</div>
</body>
</html>
NEW APPS
These are apps made by the community!