This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import Image from "next/image"; | |
import { useSession, signIn, signOut } from "next-auth/react"; | |
import { useState } from "react"; | |
import { useRouter } from "next/router"; | |
import Nav from "@/components/Navbar"; | |
import { Dialog } from "@headlessui/react"; | |
import { Bars3Icon, XMarkIcon } from "@heroicons/react/24/outline"; | |
import {ChatBubbleLeftRightIcon} from "@heroicons/react/24/outline"; | |
import Head from "next/head"; | |
import Link from "next/link"; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import { useState, useEffect, useRef } from 'react'; | |
const ScreenRecorder = () => { | |
const [stream, setStream] = useState(null); | |
const [recording, setRecording] = useState(false); | |
const mediaRecorderRef = useRef(null); | |
const chunksRef = useRef([]); | |
const startRecording = async () => { | |
try { |
A silly take on September 2018 #CodePenChallenge: 500 - Internal Server Error. I've spent way too much time on this, but it's been a whole lot of fun! Hope you have a little fun, too.
Tested in Chrome and Firefox WARNING: There will be bugs.