 Well, hello there again, I'm Al Naveen and this is another episode of the OE Week live show that we're doing during open education week I've lost count of how many that I've done but they've all been exciting and quite fun and This one is when I've well I've been looking forward to all of them But we have some really special things especially for people interested In some cool technology and things that I think are important and just to let you know This is of course on YouTube and anybody out there can send us questions This will be archived like right away and we just like this live format It's going to be unstructured and just want to say that well you get the credits for that music But all my music I use this from the free music archive Licensed Creative Commons that was a tune called free to use by an artist named Ketza who has some great tracks in there So with with that I'm going to bring on my my two Colleagues who I've known online and have never actually met do we call this meeting? Thank you qualifies sure. Yeah, that's good. Excellent. So I'll say hello first to Paul Hibbitts And do you affiliate with Paul Hibbitts design or SFU? I'm not sure. Okay, so Kind of Hibbitts design is more my common association, but long-term teaching computing science UI design to SFU for sure Excellent, and so I've been following Paul's work for a long time and he's going to show you a really fascinating tool for turning Basic simple content into some beautifully presented web pages that has a lot more to do with it than that And we're going to see a lot of demos And next I have a Zach. I didn't ask you guys at Krita or Krita or it's it's Krita. You got it Okay, yeah, excellent who I've gotten to know from his work on the openverse team I kind of lurk on the slack and I don't understand most of what's going there But every now and then I ask a dumb question and someone responds with um, you know, how does this work? And so Um, I really am pleased that you're both here. So we're going to talk about some, uh, technology and so First I'm going to mainstage You Zach and we'll say like what is openverse and um, and what's your role in it? Cool. Well, yeah, let me first quickly say that, um You know, I think all of our contributors are big fans of your lurking and your questions, Alan So please continue to do so for the foreseeable future Um, uh, but yeah very briefly. Um, my name is Zach Krita. Uh, I'm the Team lead for the openverse project, which you can find at openverse.org Um Yeah, and I work with a very diverse group of contributors, some of whom are sponsored by automatic others who are just You know donating their time and efforts to the project Uh to work on and build openverse Uh, a little little history on openverse. It's a project that began at creative commons I'm sure an organization everyone's very familiar with Um, yeah, and it was an initiative internal to creative commons, uh called ccsearch, which people may have used before Uh, which was really just designed to Uh, identify and catalog Every single creative commons licensed to work Uh known to humanity on the web Um, it's it's a big undertaking. Um, I think I think the latest numbers are that that's Over over two and a half billion Works and I think there's soon to be new numbers coming out that probably suggests closer to four or five um But I will say in you know ccsearch, which which was renamed to openverse Uh, we now have 700 million of those Uh, so we'll be updating our our home page copy from 600 to 700 that that happened quite recently And that includes audio, which is something that wasn't really in the original actually the the very original Ccsearch was basically an interface just to separate search engines and you had to send your search to google or wiki media Etc And it's out there somewhere as an archive. Oh, yeah, it definitely is Funnily enough, it's had openverse added to it. So Uh, it can be found There's there's not anywhere I can share text is if you put it in the private chat I will share with everyone share. Yeah for uh, nostalgia's sake. There is a Old search dot creative commons.org which is that's pretty uh, yeah still still serves as as an index And a little a little portal. It's actually been updated fairly recently and I think I think there's some attention to Um revitalize it a bit just as a a sort of hub. So folks can keep an eye out for that Um, uh, but yeah, so so essentially what happened is in 2021 um Uh openverse joined the wordpress project and kind of left its its home within creative commons And yeah myself and a handful of other folks, uh Were were hired by automatic to to work on the project full-time devote development hours design hours And yeah, since then we've we've done things like introduce audio Uh with the intention of adding other media types in the future 3d models is is the one we've been sitting on for a while as as really excited to jump into um, but you know also ultimately things like Uh, you know any media fundamentally, um, the the hardest thing we're trying to to reconcile a bit is Uh textual content because you know theoretically we could have open education resources Things like that. Um But it's it's quite a big initiative to to jump ourselves into Yeah, and I guess I could because I could quickly quick click through openverse and kind of show folks What it looks like some information and while it's getting set up I'll say like the biggest advantage is like everything there Is licensed under creative commons license There's no guessing like when you try google or when you have to deal with the funny gray licenses of other services and And also when you find something Um, what I really appreciate it gives you the cut and paste attribution Um, because giving attribution is one of my big Big bangs Yeah, because I think it's it's saying thank you. It's Less or so like oh, I have to because it's what the license says It's nice to give credit to things Yeah, and and I think one more thing I'll quickly mention that That is you know, probably my favorite thing about the project is that it's completely open source. So You know, it's very rare. You know, my background is in technology and it's it's rare that there can be this sort of harmony between like Uh, That's sort of the medium and the message like the way we work on it Is is aligned with the goals of the project the the sort of ethical standards of the project It's it's all open all the way down top to bottom. So um Yeah, it makes it very joyous to to come into work every day And and it's it's really for for our other understanding. Um, you don't house the media It's it's doing somewhat of a federated search. Is that's right? Or you're searching the metadata from many different collections Yeah, yeah, some of some of those technical aspects are pretty uh Pretty astonishing. So I maybe I'll resist this temptation to get into them. Um I will mention at one time uh We were actually There's an organization that creates backups of the entire internet and we were actually crawling those backups to find um websites with high concentrations of links back to the creative commons websites license pages Which is just a very good touristic for identifying. Hey, there's probably a lot of open works on this site if they're linking to all these license pages um, so that so that that research was used to Uh, generate the initial list of potential sites and then ultimately extract the information about, um, all that media um, but yeah, what what we do now is, um We have a mixture of scraping and then Using what are known as apis, which is just you know, essentially a way for websites to talk to each other It's you go to a url and it provides data instead of like a visual page Um, and yeah, we communicate with a whole bunch of different sources to to aggregate all of their media So we're this interesting mix of you know, search engine, but with a bit more sort of curation and Manual work to to get those sources in Okay, so let's yeah, let's dive into some demos. I would Yeah Put him on the spot as he's finding the right buttons to click Oh, yeah, I've been there. There's there's a there's a thing called, um, podium time and it seems to distort The amount of time that is passing. So okay. I'm gonna, um, add this to the stream and then switch And I will I will ask the obligatory can everyone see my screen Yes, or We'll ask to the audience. Simon R is out there. See hello, Simon Hey, Simon Uh, yeah, and I can I can zoom in a bit it will Hide the lovely images on our homepage, but that's okay um, yeah, so so openverse the you know the general idea is that you can search, uh or You know multimedia at once, which is something fairly unique to us. So um, this this initial view that we show folks is you know an aggregate of Right now audio and images, but you know, ultimately here we'd be showing things like 3d models and those other those other media types that I mentioned All in one view and that's really just intended to kind of show the The diversity of the commons and the the variety of all these resources Um, and so yeah, we just we show our search results. You can load more results um Something we do because our goal really is to you know surface creative commons licensed works is um to allow you to Go off to external sites that don't that aren't yet included in openverse but have fantastic open licensed works So just really trying to reduce that that friction for people Um, like I'll give a quick shout out to the center for aging better They have really wonderful stock photography for Uh, just you know showing older individuals living full lives and doing things that people do that Are under represented in stock photography um So yeah, then I think uh, what allen mentioned a bit earlier that I really love is we make it you know very very easy to Correctly credit the creator of works and get that attribution um, so we just we offer it in a couple of formats You just easily copy and paste it with the press of a button um Quick fun fact before I ever worked on this project or at creative commons Um, this was the first thing I ever contributed to the project was just this little text that says copied when you uh, when you press the button So it's nice that that has as followed along Um, yeah, and then we we surfaced some metadata about each work. So we have tags and the dimensions the file type um, and you can also very importantly go off and see it at the original source um Because you know another another goal of the project is to to highlight repositories of Of openly licensed works. So we don't actually have a way to directly Excuse me. Um download images within openverse Which which does add a little bit of friction for people, but What's also important about that is that you can just really verify the license on the source that you're on And we have intentions to document that more clearly for people sort of just How to be a good steward of creative commons license works. Um, so ultimately would like to do something like provide specific instructions for how to verify the source at Uh, all the different sources within openverse And I can quickly highlight some of those We have a sources page on the site where we, um With a big button for recommending new sources if you know of any directories of open works that we don't include but also we have this sort of master table of All the sources how many items we collect from that source and how to get to it yourself um Just to highlight a very recent example. We I just added Over 155 million works from iNaturalist Which is a really great, um Community for sharing nature observations So, you know, it's everything from a phone picture of a plant you saw in your yard to uh professional nature photographers sharing Birds and animals that they observe in the wild so Uh, it's a project we really love and it was actually one of our community contributors Rebecca Wittem who we shared that work. So You know just someone giving this external gift to openverse in their free time. So Shout out to her And yeah, so that's oh one more crucial thing that I will mention is Uh, let's see what's another nice search And to like to use animals for demo searches um You know very crucially as the ability to to filter results and really narrow down what you're looking for um, so you can obviously search for Uh, whatever specific creative commons license you need Or whatever your your own requirements are um And again, we try to do sort of an educational piece here by by explaining the licenses in a very human readable way um And then just all their very detailed filters about you know specific Qualities of the images file types formats um different sources all of the sources included in openverse uh We intend to kind of group these into in the future into some sort of presets So, you know, if someone's looking for more like stock photography, they could find that if they're looking for more the I don't know perhaps archival documents or illustrations Um, just like expose sort of some broader categorization of these sources for people Uh, something we'd like to do in the long term Um, and yeah, I think I think this ability to really dial down what you need for your use case is something fairly unique to us um And the the last thing i'll mention before we maybe just chat a bit more and get out of demo land um Openverse is available in a ton of different languages, which is extremely important to us. So um Just as an example fully translated into spanish um, and yeah, we have a uh language drop down in the footer of the site where you can see You know the extent of oh, it doesn't actually render in the uh in the video, which is too bad, but I think we have Something like a hundred languages at least partially translated and something like 20 languages fully translated um And yeah, it's really just you know with the goal of increasing access to services like this where you know, most of them are only available in english and you have to use the automated browser translations, which are you know fraught with problems and inaccurate. So Yeah, all of those translations are Supplied by community contributors to Openverse and the broader wordpress ecosystem. So Yeah, we're also extremely appreciative to them for for those Yeah, I will stop sharing very cool. We'll come back I I know I found um Because I bet most people kind of go to the the they search and they get a bunch of results and um You know, they're largely dominated by flicker because wonderfully flicker. I love has so many of the results but I think knowing that the filters are there can help sometimes Um, depending what you're looking for. So sometimes I really restrict it to specific museums if I'm looking for cultural artifacts or thinking about you know with all the ones you have from various naturalist sites So I hope people really pay attention to those filters as well as like Sometimes I'm doing a blog post. I need I know I need a wide image. Well, I can do that and that when you yes, you can go by license, but if you say you're going to You know use it commercially it pre-selects the right licenses or if you say I'm going I need to To change it or to modify it selects the right licenses So that makes the searching really powerful, but you know, I I keep urging people pay attention to the filters and pay attention to the the search modifiers like putting search terms and quotes and excluding That's how you become a power open-versor Yeah, yeah, and you may be a you may be a pioneer in the field of power Yeah, yeah flicker is a very interesting case study because Just the sheer the sheer variation in quality that exists on flicker, you know, you have people who Have been using it as their sort of personal backup since the the early aughts and they They checked that cc license because flicker does a great job of surfacing the the licenses and always has um, then you have these incredibly high quality photographers and then you also have Institutions who choose to to open their collections on flicker So like nasa has an incredible repository of images on flicker And that that variance in the in the quality that can come from flicker makes it very difficult to Prioritize them appropriately in our results. Um, they're also by by and large is the largest single source of images within open-verse. They they probably comprise over 50 of the whole collection so um Yeah, kind of working out issues with Our results from them to make sure that the best stuff is being surfaced is kind of a big goal of ours for the year Can you can you talk about like how are they prioritized in terms of what comes up first? Yeah, yeah, so it's it's fairly it's fairly simple as it stands and we'd like to incorporate many more rankings and factors into this but um, yeah, the the primary heuristic is that You have You search for text and that text is present in the title description or tags of the work So, you know, very sort of rudimentary basic search On top of that what we do is we actually incorporate popularity data from The sources themselves. So if something's been Favorited multiple times or some sites offer a view count or a download count Um, we do have some really interesting code that Calculates all of that and normalizes it across the distribution of sources and then applies that um One bug with that right now actually is that By virtue of having a popularity calculation things are boosted. So Uh, even things that are low popularity are currently shown above things with no popularity So that's that's something we would love to fix Or would love a community contributor to fix Um But uh, yeah, that's that's really the the simplest way to explain how it currently works. Um Something we're actively pursuing this year is Which which has its own trade-offs and has been explored a bit in the past but is um, essentially like machine analysis of the images So, you know, that's when you start veering into this Not the full ai territory. It's been the the talk of all technologists for the past couple weeks, but Um, yeah, there there are many services that can reliably detect, you know objects um settings the environment of a of a photograph um That that gets much more challenging in a Uh an audio context because such tools don't really exist, but Uh, we are we're really fortunate that some of the Various audio file communities that most of our audio comes from are really really good about applying tags I think there's more of a culture to do so in in various audio sites Are you trying to add more audio because I think there's like three sources, right? Yes yeah, um We we are actively working on and outreaching towards some Some pretty nice names that I'd be very excited to get um If anyone ever free music archive free music archive Yeah, we've uh, we've been talking a bit to our dear friend Hessel, uh, but haven't Haven't had the opportunity to to move forward with that lately. Um, another one I would love to see is soundcloud, but yeah, uh We've been dealing with their apis been closed for quite some time and pretty difficult to get a hold of someone over there So yeah, if anyone ever sees this and knows someone who knows someone who works at soundcloud that would be that would be phenomenal Just a happy user. No, it's it's fantastic to see and um My real goal. I wanted to meet you, but I want to I just want to get more people aware of this because um, I mean I told you in the beginning like I think a lot of people get into some gray zones, especially when They're new to open education and trying to find resources and um when you send them to google and yeah They just filter for creative commons It's very quest the results are questionable as to what you get back and so here at open verse. You don't have to worry about that You know and it's it's pretty clear But you know as you indicated like it's it's good to go to the source and verify But I also like that you're going to the source. Um There's a lot of google image search results that are places that harvest images from elsewhere. Yeah, that really bothers me Yeah, it's it's very difficult to To trust the the images you're getting from google. Um Yeah, you know, there tends to be this balance with with open source things where You're sometimes making a trade-off of quality or ease for These sort of these ethical things that you hold over those so you're always like conceding in some way And we're really trying to avoid that with open verse like we're trying to prove like Oh, the right way of doing things can also be the best way and you don't have to you don't have to compromise And I think we're mostly there. I think you know, there's there's definitely some things we need to improve on The two biggest being some of those relevancy concerns that I That I mentioned with regards to flicker And then also frankly, especially in the educational realm. There are some content safety issues that we're we're working out particularly with the results from flicker I was gonna say because I did a search and and I came up with Some things about like this might you know, not not anything like terribly offensive But stuff that you don't want like maybe kids to come across or yeah, yeah, and that's and that's huge for us And yeah with with search terms there's kind of a There's kind of a garbage in garbage out scenario where if you you know, search for something that is considered sensitive and you get sensitive results Um, you know, we still want to protect those users by default And that that is a priority, but the the most important case to us is Places where you search for something completely innocent and innocuous and you get results that you would never expect to see um The word embrace I did something with embrace and I got a lot of people embracing their freedom Yes, so that's that's like our most active current initiative Is to actually It's kind of a rudimentary way of doing it, but our first pass is just going to be matching the the textual content of things in openverse to Basically a block list of of terms that might be sensitive um, and historically that's an approach that has a lot of problems, but um, only if you're restricting access to to things on those terms, um for example, just like a lot of lists historically uh contained terminology that would affect just like Uh, various like gender identity groups and communities Uh, and and yeah, we obviously don't want to do that, but in in our case, we're We're not blocking these things. We're just making them opt in so as a sort of brute force as a strategy that is it's You know, we we really want to just be safe by default and Allow people to ultimately opt in to to seeing things. Maybe That the typical user doesn't want to So yeah, so uh very shortly we should be you know in the next couple of months um, we'll we'll be bringing back a Uh sensitive toggle and the results so you can enable to see Uh, some of these results and then by default that'll actually be blurred. So there's still sort of a You're consenting in per image to to actually go in and look at them Yeah, and then and then long term what we what we intend to do is to have Uh, and I don't I don't see this done in a lot of places. Um, there's a little precedent on tumblr actually, which is cool, but um, to just have like very granular categories of what might be sensitive that you can opt into So if something is maybe a bit more suggestive or maybe more violent or Uh, for example, there's some really good Instructive medical imagery on wikimedia comments. Uh But that's obviously not to everyone's taste. So uh, yeah, just you know really empowering people to Not just broadly Not see sensitive things, but decide what is sensitive for them is Uh, something we'd really like to do as well Good. Well, thank you, and I'm looking forward to the random feature Yes, yeah, we'll do that just for you An api endpoint where you can get a random image for great for any image of the day sort of uh Yeah apps or anything like that. So oh that is I should very quickly mention the api. Um, yeah, which I'll share the link to Which will be moving to our openverse.org domain in the coming months, but um, yeah, this is just a way to for programmers and developers and software engineers to Uh, access all of the content in openverse in your own sites applications Um, and yeah, just you can build very robust integrations. Um, There are a few content management systems out there that exclusively use openverse for their their media libraries um We find a lot of like startups will use it to quickly Bootstrap their site builder or whatever they're working on with With a nice set of default images for people to choose from um Oh, I just noticed a question from simon. Yeah, that's a great question. Sorry. We missed that That's my fault Yeah, I assume this is referring to sort of a maybe when I was talking about um When we were doing that discovery work to find creative commons license works Um, that's also something we're looking into a lot lately. Um Creative commons historically actually proposed a standard for this to the Uh, the w3c, which is the sort of uh governing body for for web standards Not not to get too technical for people. Um But they had a proposal called cc rel, which was this Basically just a standard format for when you're making a website, which you know are typically written in or Built it with html, which is you know, sort of a programming language um That that html structure would have information about open licensed works directly inside of it um And and yeah, that proposal never really took off or was adopted Um, that's that's a story for another day. That's part of this Uh semantic web movement that itself never fully took off in many respects. Um I'm no web historian, but um Yeah, all of that is to say is there are some newer standards, uh, like this And again, not to get too technical, but um schema.org is this standard for for metadata on the web Uh, and they have they have an image format that has its own license fields. Um uh Yeah, so this is basically just like a A way to communicate with computers it's and and represent the the works on your site as as data And and this has this has fields for license information the information that they author All the kind of metadata that you would expect to find So There's there's not really a standard built around that yet for identifying uh creative commons license works, but we're very interested in in pursuing that line of thinking and for example doing something And we're we're ways out from this but doing something where sites could Uh include this metadata on their site And then basically have a way to tell open verse. Hey, we have all these open license works Um, and then open verse would pull them automatically. So They would transform the model we have now of needing to identify these sources And manually add them to open verse or write code to add them to open verse And instead just let uh creators of open license works broadcast to open verse that that they exist And yeah long term we're extremely excited for that because Uh, you know, it comes with a lot of challenges in terms of of moderation and validation of these things, but It's also just a really really powerful way to Uh, you know empower people who want to give their works to the commons and share them with the world All right. Well, I really appreciate this has been really exciting zack And we want to send everybody to open verse and stop going to other places Um and and where they can as zack says there's places To offer help and um, even if you want to join in the the slack channel And ask questions that they're I can say they're readily Are responsive so thanks so much zack. It's it's come to to hear you I'm we're going to give the stage to to paul now um, and maybe we we can talk about like your project doxify this and Tell us like where did that come from? Where did that come from can I say its origin story is a github issue? What a weird story that would be so, uh, it's true, uh, about maybe Nine months ago, maybe a year ago. There was a comment an issue on the doxify github repository by the way doxify for those who don't know it's a very unique, uh documentation generator that is not generating html pages Like with build processes like hugo or jackal or anything like this doxify is really super unique as it goes directly from Markdown on the back end to a web page with no build process. It's all in the front end Using javascript. Anyway bow Shaw bless his heart bow Shaw Wrote on a github issue for doxify. Hey, wouldn't it be cool if somebody could host a version of doxify? That would render markdown files remotely located and I saw this issue and it was like What doxify can do this like that is amazing? And so you can find this issue on github With doxify and I started engaging bow to learn a little bit more. I'm not a developer by the way I'm basically just a hacker but this to me was amazing because in the past and You know markdown. I've seen alan as a great format for open educational resources But there's a usually a huge barrier of entry like just tell an instructor. Oh, just go create a jackal site get back to me, right? Um, there's a lot of things going on. So, you know earlier I've had two other attempts at this trying to bring markdown to the masses, right? I worked with the grab cms, which is a beautiful flat file system, which I love Um where content is stored as external files with markdown Uh, but you've got to have a web server, you know, I got to get a php version That's not antiquated on university server. There's all kinds of barriers So that's fine. But not for everybody. Then I discovered doxify And doxify you can run in 30 seconds from the github repository. No server github pages. Okay looks better I'm able to kind of get that going a little bit too. But github pages. What folder configuration? Still kind of barrier of use Bow Shaw says I can use doxify to render a file remotely. Oh my gosh That means you don't even need a website anymore, right? All you need is a single markdown file Located publicly accessible And you can create a website So that was really the genesis because it's like well, what can I do with that? And when you think about it And I know alan you've gotten into this idea of embedding content in different places When you're rendering a file that's Only in one place that you control the source of But you can restyle that file every time you render it remotely You get to some really cool possibilities and by cool. I mean like useful Of actual content reuse and if oer is not about content reuse What is oer about right? And so anyway, hope I didn't deviate too much for your question there But that's a little bit of background Of where the project came from and I'm still discovering myself All the things we can do with just a simple markdown file located somewhere on the web Can you share a little bit how you use doxify and your own work? Sure. So why don't I start a screen share here? perfect Okay, so my main use of doxify is with my course that I teach at salmon phraser university, which is a UI design course and I use the canvas element And I'm going to bring that side up for you So, you know what? I'll be honest. I mean actually canvas lms has a lot of good things going for it. I mean, there's some pretty good attributes about form discussions and assignments and Things like that that that work well, but content content is not so great in canvas And the problem is If you want content to die Put it in your lms, right? Because then it's like who's going to get that content the content's going to probably be in a customized html format And it may not be accessible outside the lms and all these things So for me once I I've been embedding content from external sources like using a grabcms earlier and then using doxify earlier But now with doxify this I can have a repository of markdown files and render it as you see here what you see now is canvas, but the content is from doxify This and so this is my home page. I can go into a module I'll bring up a module and because it's using doxify this you can do things like adding a dynamic table of contents at Render time via a url parameter So and I know from my students my students love the fact now that when they go to weekly modules They can see this high level index of all the materials and jump to anything that they want This is all doxify this right so in order to kind of prove that this is doxify this Here's my resources page and if I go to the bottom I'm going to see Oops, I'm going to see and edit this page link And if I tap on that link Oh, you know where I'm going to go Alan. I'm going to go to a github repository Now you don't have to have that link in your content rendered by doxify this But it will automatically do that for you calculate the right url Give it as a link and so in my case my students are pretty you know, they're competing science students They're pretty comfortable with github. Let's say They could actually contribute to the course So you you get into all these interesting areas like not only content reuse But content collaboration Because if your audience is comfortable with editing a file on github then they can also contribute and collaborate on that file So you've got all kinds of a possibility So to loop back to your question Alan, you know, that that's where it really all started Was to use content in markdown in my own course And then that's turned into this whole markdown publishing project Uh that I've got going Um Well, what would you like to have me show next Alan? Do you have anything in particular of interest? Oh, I can't seem to hear you Alan Sorry about that. Uh, okay, that's fine. I'm here. Do you want to um Do you want to do like a demo and show like what happens when you put it into the doxify this site? Sure. Sure. That's that's a great idea. So let's open up a a little file So this is a markdown file that I've got on github. Okay, so Any publicly available markdown file you can basically render with doxify this So this is a markdown file that happens to contain some interesting stuff, right? There's markdown lists There's like a java code block. There's like an image And then there's some other stuff like an embedded iframe, which of course you can't See in the current github markdown Presentation, but it's in there. But anyway, what I'm going to do is I'm going to copy that url Okay, so why don't we track all the steps needed to publish a website or web page with doxify this? So first step is you get a url of a markdown file So I got that the second step is go to doxify this net So here we are in the web app. Uh, by the way, the web app is open source What's really super cool though is that it's actually open source and you can run your own instance So if you want to you could even set up your own customized doc you doxify this Renderer with your own url. So you control everything from start to finish Or you can just use the publicly accessible version to render markdown file So you see in the middle of the page, we have a web page builder. I'm going to paste That markdown file. Oh, I think we're at step two, right? Step two paste url Step three you tap the publish a standalone web page or you could press return And that's it and what we have here is a responsive Web page created from that markdown file But you can do all kinds of interesting things, you know, just that so let's go back to our mark web page builder Let's say what I'd like to do is I like to include And edit this page link and I'd like to include table of content on the right hand side I can publish Now I have my page I have this really handy edit this page link It'll take me right to the github file to edit it and I had this handy generated Table of contents on the right hand side And if that's still not enough for you There's a whole bunch of other things you can do like you can choose your font and your family You can choose your link color And these are not random options most of these options are aimed at two things. Okay one So you can style your content at the url level. I'll show you the url So it better matches your destination platform that you want to embed in So in other words, you can actually have one piece of content styled multiple ways for multiple destination platforms And two things that you want to kind of enhance being more like a standalone web page. So in other words, we could use A doxify sidebar, which is a more kind of advanced kind of navigational tool on the left hand side if we want We can even set the number of maximum header levels for that So you can do more things you can change that text to edit this page. So let's actually Reset everything to the default And let's do a doxify sidebar Edit this page link and just take a look at that web page So here we are. So now we have our web page. We have our edit this page link We can now with this more advanced sidebar Hide it and show it and of course we can navigate to it. But how is all this happening? It's time to go to the url bar, right? So if we go to this url bar, let's take a look at this url bar Okay So what this url tells us is that we're going to a web page on doxify this net And in the base path, by the way, you don't need to know any of this stuff, right? You can just tap on your web page builder and it does it for you But if you want to nerd out like I like to nerd out You can actually just edit this url and change how doxify this presents your web page So we have base path, which is this is the obviously the path to the github repository you're rendering from You also then pass The fact that you want a sidebar the sidebar goes true You also passed what the link is to the Github repository for your edit this link page and then that's it But let's say you want to change something Let's say that you are embedding into a platform that uses red link, right? So you could actually add a new item and say link Color equals and I'm just going to put in text because that's what it it does Again, you could use the web page builder to do this because pick a color visually. No worries And here we go. And so now do you notice here? I'm using the red link color And then down here so Using the web page builder, you don't have to know anything about url Parameters you just point and click to what you want It'll generate the url for you the copy paste use that But also if you want to nerd out a little bit you can tweak that url in different platforms and different situations Install the content differently So maybe a nerdy question and then we also have a question from the chat. We may want to get to like You know, I know the urls get they get pretty long, right? And and they're easy to mess up Would there ever be anything where like if you had a builder that would maybe Generate all the data as like a JSON file and then you passed it a simpler parameter That may create more complexity I think it's a fantastic idea what I run up against though is and this also happened to me Uh with css styling is that because of browser security issues certain things are not permitted Yeah And so because I originally I was also trying to be able to link an external style sheet, right? So that being said, uh You know right now it doesn't look like it's possible So the the urls are longer, but you can do things to help people So for instance, I know there's another question. I'll I'll be quick here For instance, um, if my fellow sfu instructors would like to do this because I'm doing a presentation next week At sfu about this this tool and canvas you can set up your own instance of doxify. This is the sfu instance Where you put in a url and you just publish that standalone webpage Now take a look at the url that is generated So because i'm using a customized instance I can default and add custom font families custom line heights and font sizes So for a faculty member, they don't need to know anything of that stuff All they need to know is where I go to enter in my url And it can omically then configure it. So it's not what you're looking for alan I appreciate that but it's kind of in that vein of where you're trying to make it simpler, right? for people to kind of get a set of customization parameters Without errors, right exactly and there's always, you know url shortness to make them prettier and all that stuff, so Yes, indeed. Yeah. Yeah Uh, I think uh, you kind of got to where I think ion was asking like what does it take to set up? um, a custom doxify Oh, so a custom dox. Oh, okay I like to do it. I like to do what you did at sfu, right? If you have your own right, right? Sure. Sure. Sure So so let's go over to doxify and let's uh sneak over to the bottom of the page. I think I have a I do I do have The okay, so basically if you want to set up your own doxify Uh, you would be able to uh, I'm not signed into github right now, but you'd be able to clone this repository So that's one step clone the repository two Once you've cloned that repository you enable github pages on that repository And basically once you do that you are running doxify this with your own url You can go in and customize your css your default Um, and then you use that url Uh to to then generate your your your pages Um, and I use something quite similar to that with uh, if we go back here, sorry if I go here I'll actually show you Here is my sfu doxify this instance And so this is what I just showed you this is basically just a fork from doxify this so I can then customize it So it's still running from github. Um, you you've basically fork it And I guess if you want a custom domain, then you just you know Yeah pointer to it. Yeah. Yeah. And by the way, you don't need to run on github You can actually I also have a version running on my own web server So it it is portable that way But of course I'm I'm just running on github as much as possible because they have a really great server up time and it works So well, uh, because it's not using php. It's just a javascript front end, uh, which again, you know, it is amazing That that's possible All right, excellent. Well, maybe show us some more demos and sure I like that new front page thing. That's brand new Oh, yeah. Yeah. Yeah, great. Yeah. So, you know, uh doxify again doxify is such an awesome project It's almost got 30 000 stars right now and I'm hoping this project kind of brings it out to even more people Uh doxify supports a cover page Which is a really nice feature kind of gives you a more graphical front end For your website and then you can go into your pages So let's take a look at the publishing with doxify this Guide because I when I thought well, I should write a guide to help people publish with doxify this Of course, I thought well, what better way to use doxify this to publish the guide So here we go. So this is using doxify this To explain publishing with doxify this Um, so this is a nice, uh front end page now, of course Oh now that we know we can zoom into that url. Let's take a look at that url lots of stuff going on with this one Um, we've got a sidebar. We've got an edit link We've got a sidebar with three levels of navigation and we're using a cover page that we passed Um, so a lot of things happening with that and it gets us this presentation So I can tap on read the guide and now I have a nice presentation of What's marked down and publishing with doxify this and even showing for instance some html of you know a url and using it as a Embedded iframe. I think I have an example. Here we go embedded iframe and canvas and a little bit of both github So this is a Online site generated by doxify this. Yep. I'll boat doxify this. So that's meta in many ways, right? We just we just googled recursion We did we did And what else well actually alan I'm sure you'd recognize These things down here. So, you know, this is your own true writer site Hosted on wordpress. Correct me if I'm wrong and then as we scroll down We see that you have using doxify this to embed a list of all your all the true writer sites that you've seen in action So this is coming directly from github And there's even an edit this page link. I see you included I also note that you've changed the link color. So it matches the link color of your wordpress site And if we tap on this link Do you be able to then directly edit that you know in github? So, uh, I'm going to turn the tables on you alan. So how did you find that experience of You know being able to take github content and then you know render it and put it where you want it It was handy. These are some custom wordpress themes that I've been working on for quite some time and um, I had a terrible long Readme document a single one That had documentation and it had a list of examples and it just was one of the things that that grew by accretion um But would also um, and so I have chunked it out a little bit So the examples are now their own page Which allowed me to embed that in an information site But the the real beauty that I wanted to do was inside my wordpress theme um There's a there's an options page and I used to embed My um my readme documentation on how to you know to use all the features and what I had to do is I had to export Markdown convert it to html and include that in my theme And so that the internal documentation was usually behind So what doxify allowed me to do is to clean up the documentation into its own URL So it has a standalone link you can point to but I can also embed it into my wordpress theme Through an iframe and and this means that that it's always up to date. It's always the current version documentation um, so there's like multiple ways that I was able to um do things and Now all I have to do is clean up a lot of my github content Don't don't we all don't I can I can relate with you there um And in fact, you know, I took a page of your playbook with my doxify this readme Because I've been able to then use doxify this with the doxify readme to create a front end of my documentation Uh, and you know, this is the great thing now that I'm also finding is that I've only have one source of truth with this content now Right. I've got this readme on github. But all of a sudden it's free here, right? And I could further embed it in something else if I want to But I can also just pass this little url And let people view this and it looks like it's a full website documentation about Doxify this but really it's just the readme Yeah, re-rendered, right And I'm thinking like a lot of our use cases are we're publishing and sharing information But like I'm thinking instructional setting where you may have students working on a shared project where the the code or or Whatever writing or developing based in github Can be reused and displayed in so many multiple places and then it would always change as the students are working on it And yeah, yeah indeed and I'm also hoping and maybe I am being too optimistic But you know through the successive open source projects. I've been working on with markdown I'm hoping now I've got a low enough barrier of use That someone if they're brave enough to go to github get an account and make a file They could actually start publishing Responsive webpages and share them and even collaborate with them But we'll have to see how that develops But that's that's my hope is that now that the barrier of use is further decreased for folks Just to get into markdown publishing because as you know if you get into it then as their skills grow They could outgrow doxify this which by the way is awesome to see them leave home Right and maybe they move to their own jackals site or maybe they move to docasaurus or maybe they move to something else Then that's awesome, but maybe to help them get going. I'd love to see that Yeah, well, it's it's fantastic to to see and watch and um And it's good to know I didn't know that doxify this itself ran on github And so one of my questions was like, you know, what about the load on this server, you know Indeed. Yeah, and you know, I've been you know github pages has a pretty amazing uptime. Yeah And uh, and it's just seemed like a natural but I have been running a mirror In fact, if you go to the doxify this Github repo you'll see a net fly Net of fly URL there too as a mirror because the cool thing is if if you know You're doing that presentation of your lifetime and you're using doxify this and for some reason github pages is down You could actually just use the net of fly Server and render your content right because you know things happen And you never know but because the presentation engine is separate for them from where the content is being stored You can actually even use different renderers of the same content And also Not to get up too off track, but that's another really important conceptual piece I think of this is that the instructor or the publisher Has their own content on their own Account on their own server on their own whatever it is And all doxify this is doing is rendering it from their own location I'm never uploading a duplicate of their own content or anything like that Right. Um, so anyway, that that's another goal of the design Well, this has been really exciting. I mean this is like it's nice to do a techie session Not that I don't mind the discussion things But I I like to do the tech just like and I can't but you call yourself a hacker my god, paul I think you're way ahead of me Well, you're too kind, but no, I'm a hacker But uh, you know, I have to say and by the way, zack, I love what you you showed as well with open verse Uh, and you know searching for you know open content is something that I myself also, you know have been doing I have a question for you if I've got time alan Please One thing that I haven't quite found a good way to do Is and maybe it's because I'm doing something that's unusual is trying to find Open content that's using markdown like is Is anybody may either of you have a hint or a tip for me to do that because uh, That really I find helps me repurpose and reuse that content Yeah, that's that's a really interesting question I mean I I personally generate a lot of uh openly licensed markdown Of our own documentation. Um Yeah, I guess an initial guess would be that maybe you could I believe in github's search user interface you can search by license and file type So it might be interesting to look at. Yeah uh and again, this is just the uh archivist and content aggregator and me speculating but you might be able to use that to And then you can sort the results by popularity and all of their various sorting methods That might give you a list of at least markdown documents that are openly licensed. It'd be a lot of readme's fundamentally. So the value isn't the highest thing but Yeah, maybe you could also play with like some filtering there to To weed out files named readme for example. So sure sure. Okay. Good tip. Thank you. Yeah, I'll I'll give that a go Anyway, that was just an aside. Yeah, but you know, but to mess things up There's there's a lot of things out there on git lab and I know, you know Some open source people are like not happy with github because of its own. So Yeah, I can understand that too. And recently I've actually been exploring a code burg I think it's called and I find it's a really nice open kind of source version of git with a Web service. So anyway, but yeah, uh, some some great stuff going on there and git in general for sure Yeah, yeah, yeah, they're really lovely Github alternatives that are you know, even open source, uh source source hut comes to mind Yeah, source hut actually calls itself The hacker's forge Oh my gosh, I still have stuff on source forge Yeah, you know, you want to complete Everything old is new with software especially names Yeah, source has source hut is great and it has a very, uh User friendly interface a bit more minimalist than github. So yeah, we would love to mirror everything on openverse over there Yeah, yeah Um, you go ahead, Alan No, no, uh You can go look at this. I'm just going to screen share something really quick Thanks for uh, Sharon Zach the uh url from uh, Ben Shaw That's right. Yeah, that's that that's the story right there For me and a super cool to see that you try doctor by this with some openverse, uh, Okay Yeah, I was trying I was just going to share that because you know, why were you talking? Great. Oh, yeah. Yeah. Yes. I threw in um We've a contributing guide for openverse just showing Folks of all different levels of technical knowledge how to contribute to the project, you know, whether it's translations or Coach or right uh testing it. So yeah threw it in there and it looks fantastic. So Very awesome. Yeah, what better way to end than a little Yeah I love it like I couldn't dream of a better ending. So, uh, Thank you both for joining me. It was great to talk with you and uh, I'm definitely crossing paths again though We uh, a little bit of an outro video here and then we'll we'll be gone. So thanks again. Good to see you Paul and Zach Thank you. Thank you guys. Thank you very much. Bye