The templates we’ve created are only partial HTML documents. They’re enough that our browsers know how to deal with them, but they could be made more correct. One way to accomplish that is to create a base layout which can be used for every page. This base layout is the HTML code which “wraps” the unique content for each page.
The challenge here is to refactor your code to use a single base layout for every page. Once you do that you can update our talk.html and talks.html templates to extend the base layout template.
You can read more about templates and a base layout here:
https://flask.palletsprojects.com/en/1.1.x/tutorial/templates/
Here’s a minimal HTML template you could use:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>title</title>
</head>
<body>
<!-- page content -->
</body>
</html>
Another place where you might go for a minimal HTML base template to use is HTML5 Boilerplate: https://html5boilerplate.com/
In either case you’ll see a comment for where you’ll want to insert your page content.