 I'm going to turn it over at this point to Jonathan Pyle. I'm so happy to have you guys all here for this discussion of DOC Assemble and Demo. Alright, thanks very much, Sart. So my name is Jonathan Pyle. I am an attorney with Philadelphia Legal Assistance. We are an LSE-funded legal services organization. So this webinar is intended to give the community of coders, of document assemblers, an update on three different tools, DOC Assemble, Document, and Community Lawyers app builder. If you haven't heard of any of these tools before, this will be a good introduction, but this will also be kind of an update on some new features that are available. It's a 90-minute webinar, and it's divided into four different parts, four different speakers. First I will give an overview of DOC Assemble and some of the new features that it has, and I'll try to quickly turn it over to Quintin from Greater Boston Legal Services to talk about some examples of using DOC Assemble at GBLS and how he's created a learning community around coding the law and teaching people to code the law. And there's plenty that you can do without using DOC Assemble as a coding tool. If you don't want to learn how to code, there are some no-code tools, which we'll get into in the second half. Dorna from Documate will talk about the Documate system, which is a very user-friendly no-code thing, no-code system built on DOC Assemble, and then Scott from Community Lawyer will talk about Community Lawyers app builder, which is as easy to use as SurveyMonkey. All right, let me see if I can, okay, it's getting a little noise, so I muted somebody. All right, so DOC Assemble is a free open-source system for document assembly and guided interviews. I developed it in my spare time when I wasn't working as an attorney in Legal Aid. I started working on it around 2015, and I've just been working on it since then on the nights and weekends. It is available for anybody to download or to create a server. It's on GitHub, and it gets updated pretty frequently. We've got the change log showing here, showing that every few days I update a new version, and so when people point out a problem or a bug, I can often get it fixed pretty quickly. We get together once a year for DOCACON, which is a one-day conference we had it in Brooklyn in June this summer. We had some sponsors, some guy from the UK paid for our happy hour. We had a number of speakers from like a Bar Association, Legal Aid, a Community Lawyer. Some big firms as well participated, so it brings the legal services world together with other parts of the legal world and tech startups. If you missed the conference, you can find videos and PowerPoint slides on the DOCACON.com website. One of the big things that I've been working on since the last time I presented, which was at the ITC conference, is really improving the API for DOCassemble. That doesn't necessarily mean anything to you if you're not a coder, but it does open up a lot of opportunities for integrating DOCassemble with other things. One of the things I just wanted to show you about how DOCassemble has evolved is our Slack channel. Anybody can join the DOCassemble Slack group and it has a number of channels in it. The most popular is just questions where people have a question about how to do something or if they're stuck, I can usually respond very quickly. I'll just show you some of the channels here. Analogy Project was a project that Jason Morris worked on to integrate analogical reasoning with case law with DOCassemble. The cutting edge, artificial intelligence in the law. Jason Morris is a Canadian, he's a very creative guy, a real asset to the community. There's also a channel on integrating with CLIA, which is a case management system used in the private sector. We have a channel called Enterprise, which was created recently for people who are at big firms to talk about how to get DOCassemble to be ready to be deployed in the big firm environment. That's exciting. Quinton has his crew under the Greater Boston Legal Services channel. We've got a channel talking about integrating with the legal server case management system. We have a discussion on how to structure code. Big idea questions about how do you work with subject matter experts? What variable name conventions should you use? What are the most elegant ways to approach things? DOCassemble is also being taught in a couple of law school classes this semester. There's a channel on teaching, and then there's a channel for student questions if any of the law students want to ask a question, like a really newbie question. And then there's a channel on how to do DOCassemble trainings. So it's a pretty active community. There are 400 something members of the Slack group, a lot of them just lurk. But it's pretty active. So I was going to just dive into an example that illustrates a couple of things. So this is the playground. I have a server running at docassemble.org, and I go to the playground. And here's what a guided interview looks like in its source code form. So it's just a couple of questions that do things. So let's just run the interview to show you what it does. So it says, tell me about yourself, name, and social security number. Where do you live? And this is an example of a feature that I've demonstrated a couple of times. But if you haven't seen it, it uses the Google autocomplete. So if you start typing an address, it will show you an address near you, near your location. And it will populate everything accurately. Clients often mistype addresses. And so it's really valuable to use the Google autocomplete feature. And then say I want to sue for lots of money. And the next page shows a couple of things. One is it automatically says you should file your documents in the court of commonplace of Philadelphia County. So it used the address to get the county. That was made possible by Google's geolocation feature, which was enabled there. And it's also demonstrating how you can produce a document in two different forms. The unredacted version looks like that. It's created from a Word document and it's plugged the information from the interview in here. And this is another cool feature called the redact function, where this is particularly relevant if you're from Pennsylvania, because in Pennsylvania now, when you file any legal document that has a social security number or other personal identifying information, you have to file in two forms, an unredacted and a redacted version. And so this is an automatic way of very easily generating a redacted and unredacted version. And the only thing I had to do to do that was add this line redact false to the attachments to that question. And so the way this works, this looks like in Word, I've got my Office 365 open here. And so here's the underlying Microsoft Word file. You can see that I've got variables in double squiggle brackets. I've got some if else logic here. If the money claimed is more than 10,000, then say a big one. And here's how the redaction thing works. You just wrap whatever you want to redact in the redact function. Another thing that this demonstrates is the power of using objects as variables. So in the actual document I said my home address is so-and-so South Street, Philadelphia, PA. So that is normally a bunch of different fields. But the way that it can be specified in your Word document is just refer to user.address. And it will figure out that you want to split it into multiple lines. It will use the various parts of the address automatically. And hopefully that saves time while making Word documents. The currency is nicely formatted using the currency function, adding the commas and the decimal points. Over here on the right-hand side is a playground sidebar, which is a Word add-in that is available both on the web version of Office 365 and on the desktop version. It looks a lot like the sidebar in the playground. It sort of has the same functionality, but it helps because it has an autocomplete function. So if I start typing one of my variables, it will show the suggested completion over here and I just click it and it inserts the rest of it. Getting your variable names 100% accurate is a really important thing when you're doing any type of coding. The Word file here is stored in Office 365, just in my OneDrive, but I can press that button and it will upload it to my demo.docassemble.org server just by pressing a button. And so that's kind of like the standard workflow of a developer of a guided interview is in OG.docassemble is writing text over here in the YAML format, which stands for yet another markup language. And then Python code can be used to determine some of the interview logic. So one thing that I developed recently at Quinten Suggestion is a feature for creating interviews in multiple languages. So Quinten was working on a system where he wanted to have his interview that he was making for eviction available in five different languages and what would be a convenient way of having translators work on the underlying text of a guided interview. So I created this system that creates an Excel spreadsheet with all of the phrases that are present in a interview. And you have them here in a Excel document that you can hand off to your translators. And so this is a Spanish version. So I'm just going to translate one of the phrases here. Tell me about yourself and I'll create a Spanish version of that. And I'll save this to my desktop. And then I will go back to the playground and upload it into the Data Sources folder. And then I will go back to my interview and I will plug in some logic for making the translations appear. So it looks something like this. It's just three different blocks. One is a reference to the Excel file I just uploaded. One is a question asking what language do you speak and setting a field called the user language. And the third is a code block that indicates what the language should be for every time the screen loads. And so now when I run the interview it's going to ask me what language do I speak and if I say Spanish, then that line from the Excel spreadsheet is now part of the interview. And so you can just iteratively use this process to translate the phrases in your interview into different languages. And also there are a number of phrases throughout the system like the stuff here in the menu. All of that can be translated as well with the help of this feature right here. And that feature actually uses Google Translate to give you a head start on translating it. So that is one of the translation features. And I just have a couple more minutes to show you a couple other things that are kind of cool. They're new. One is this feature for tracking reasoning that your logic goes through. One of the problems with guided interviews is that even if they produce the correct legal result, the user doesn't really get an explanation of why that's the correct result. They just kind of just comes like from an oracle or something. And it can be kind of tough when there are so many different branches in your logic to develop some type of automated explanation of the reasoning that a system went through in order to produce a result. And so there's this function that I added called explain. And let me show you the full text of this interview in a widescreen format. So I've got some Python code here that shows the logic of the interview. If your favorite fruit is one of apple or orange, then you either are eligible or you're not. Let me actually run the interview so you can see this ridiculous interview. Well, I suppose I say that my favorite fruit is apple, but my favorite vegetable is turnip. They will tell me that I'm not allowed to enter the space program. And I'll say the reasoning was you said your favorite fruit was apple. You also said your favorite vegetable is turnip because your favorite vegetable is disgusting. You're not eligible for the space program. And so the way that that is created is you just write these little lines with the explanation every time you do something in code. So you have sort of your code and your explanation all in the same place. And at the end of the interview, the user can sort of get a play-by-play of the thought process behind the interview. Which would otherwise be somewhat difficult to create. Let's see what else I've got. I've got a new system that allows for excessive customization of every aspect of the screen. I don't personally like this stuff myself, but it's very popular. People like to put like disclaimers or stuff below the buttons, something at the top of the screen. They want to customize every little part of the screen. And so there are lots of different things that you can customize to your heart's content. So this interview will show different things on every single screen, this sort of text that comes up. I think I'll do one more thing. One thing I want to mention was there's a lot of discussion around like how do you staff a guided interview project? And I have a long missive that I've created in the development section of the documentation where I opine on how you create high quality interviews. So if you're thinking about staffing a project, you can read that. One last thing. A lot of people like to gather groups of things. And there are different ways to do that. So let's say I want to add information about fruit and seeds. Then you can have a table and you can reorder the items in a table by clicking these mobile friendly buttons and you can edit the things that you added after they were created. And there is also a feature now for collecting all the items on one screen because a lot of people like to do this. They don't like to have this screen switch over so you can do add another. And so you gather a list of things all on one screen. But that is all I was going to demonstrate. Now I want to turn it over to Quintin. So let me see if I can change the presenter here. Hello, everybody. Let's see if I can turn on my webcam. They were able to see me as well. Great. Looks like I'm not showing my screen. Or does everybody see my screen? We see your screen, but we see the slides in edit mode instead of presentation mode. So I just want to talk with you today a little bit about something I don't know. Maybe it's a little bit grandiose, but calling the Massachusetts model. So I'm hoping that all of you can take back to your legal aid organizations as well so you can build your own docassemble learning community. Today, I'm wearing the hat of being a consultant. So I've worked at Greater Boston Legal Services for the last 11 years, the last nine months or so. There's been enough demand for people who are looking to do docassemble development that want a little extra, and that I've been offering that on the side as well. So we do a number of different kinds of work to have a small team of people that work with me now, and we're doing things, everything from building these user-friendly legal applications, kind of wizards or guided interviews to doing API integrations to kind of add extra glue to your interview so it can do more useful things and work with the other applications you already have, hosting and setup, and purely internal facing documentation as well. I have been, for the last couple of years ever since I've discovered docassemble, one of its bigger evangelists. So maybe a question that you have, you're tuned into this webinar is why docassemble? What's so great about it? I think one answer definitely is that it has a ton of different features, and I guess often actually just went over a couple of them. For example, you can do things like send SMS text messages, emails, interacting with someone over time, not just when they're sitting down in front of the computer. It's one of the really great features that it has. It's pretty easy to learn. So yesterday I just taught a class at Suffolk Law School, for example, in a half hour. I think all of the key things they need in order to build really useful guided interviews, basic logic, writing and displaying information on the screen, asking for information and assembling documents, and an interview that did all of those things fit in about 20 lines. But I think that the biggest thing about docassemble that makes it attractive over the other platforms is that it can grow with you completely. There are lots of easy to use platforms. The truth is you can learn any of them faster, probably. There's some that are more complicated. There's some that are definitely that are easier to learn, at the very beginning with docassemble. But the actual core features that I mentioned, like I said, you can learn those in about a half an hour. And then after that, when you want to go on to the next step, when you want to build something that's a little bit more featureful, you don't have to learn a whole new platform with docassemble. Docassemble can grow with you and expand to the limit of your abilities, the limit of what's possible on a website, essentially, is possible with the docassemble platform. So you don't run into these artificial limits that will stop you from being able to advance your work and to do something that's a little bit more complex. That's, I think, one of the most exciting things about docassemble to me. Docassemble really is that one tool to rule them all, in my opinion. You can do, using the same platform, you can build a really simple interview that generates a client letter. Or you can do machine learning and use the eSignature API and do something that's really advanced. And another great thing about docassemble is that it can be kind of this glue that lets you make all of your other productivity tools in your office work better and work together and to share information with each other. That's something that I do a lot of at Greater Boston Legal Services. I just want to point out that we do not have the adverse side effects of the Ring of Power, if you use docassemble. You don't have to make any trips to any giant volcanoes. You use docassemble. Exactly. So what I'm calling the Massachusetts model is this. So it's more decentralized than other platforms that you might want to use, but it has the advantage of being on the web. So anybody can access your interviews still. So in Massachusetts, we have, we actually have two different central servers and development servers. But we're freely collaborating between four different legal aid projects right now that are using those servers in order to host their projects. So we have that burden of hosting is shared. But at the same time, we're really able each to customize what we want to have accessible in that platform. I've been hosting for the last year these meetings not quite every week. So I think probably two or three times a month where we've been doing a number of different things. One has been mentoring people with their questions as they come up. But some people really prefer that type of feedback in person or over Zoom meetings where they can ask those questions and get an answer right away from someone who can help them. Some more lecture style sessions where I'm sharing a new technique or other people who've learned how to use docassemble. And my program or around the state have for sharing something that they've learned. I, you know, promote this idea and there was some people in my office who are a little skeptical, but it's turned out that actually a number of regular staff from my program lied no idea until I opened up the call to everybody in the program, have been really excited to learn and participate in docassemble and participate in these mentoring meetings and to build their own projects. And some people have created some really advanced tools using the knowledge that they've gained that way. What I also have found is that not everybody was ready to learn or spend the time to devote to building something useful completely on their own. So I built a couple of tools that lower the barrier to entry. So these are ones where people only have to know like ten or so different fields, they don't have to create the interview from scratch. So they can make as many templates as they want that still benefit from a really focused task that I created that can be automated with docassemble. Here's what I think it would take for you to start a model like this in your own state. And by the way, you're also free to join in to our semi-weekly meetings. If you join the GBLS channel on docassemble Slack, that's a quick way to know in advance when we're having those meetings. But if you wanted to start something like this in your own state and you needed your own server in your state, this is about what it would take. For nonprofits, you can get relatively inexpensive or, sorry. Let's jump back to the slide here. You can get Amazon credits or Microsoft Azure credits for pretty inexpensive. Azure has a really good, as a completely free offering. But on the other hand, the cost per month is higher. Once you run out of those three credits, Amazon, you pay upfront. You can get for $175, you can get credits through TechSoup. And that would easily cover your use for the whole year. So that's kind of this $175 a year. My organization, Lema Legal, is happy to help you with additional setup. And then what you're going to want to do is you set up the server and you have your monthly hosting in place. You're going to want to set up a couple of APIs to make it really useful. So Google Maps, for example, Twilio for sending text messages and MailGun for sending emails. And that's kind of what you really need. And then there's a number of free learning resources that I recommend that you take advantage of as well. I was just realizing when I started to set up this presentation, I didn't have all of those collected in one place. So I started working on a place for you to look at those resources yourself. Not done yet, but if you check back over the next few days, there'll be one central place that you could consider going to kind of see. How do I actually get started developing a DACA symbol? And I think probably it's good for every state to have something like this. That's really all it takes to get going. One server will be able to host probably dozens of interviews, maybe even like 100 or so with no real burden at typical usage rates. Here's some of the learning resources that are available that I'm going to be compiling in one place. There's definitely the first place to start is the official documentation. But there can be a lot there to look at. So I think that my goal is to provide some easier entry points for you when you're trying to figure out, well, what do I actually need to know right now to start developing? We've been recording our semi-weekly meetings, and those are available as videos on YouTube. A number of blog posts that cover different topics. And there are a number of different tutorials that are available. So you can use this link here to go to that website or use the QR code as well. And maybe I should dump that on the chat. I'll do that after I get out of this presentation and onto the demos. I do invite anybody to have questions to raise your hand at any point. I know that is a little harder to do on a webinar like this sometimes, but feel free to interrupt if you have any questions. So what I want to do is show you three different tools. One's going to be in a complex. Quick questions here before you jump into demos. Some of these are a little bit on the technical side. One of them is somebody who's interested in exploring the use of doc assemble for online intake with regards to interacting with a case management system. So really is the infrastructure there to kind of pass variables back and forth from doc assemble into or out of the case management system? It's kind of the first part of the question. Then there's a second question related to this. Yes, the answer is you definitely can. And I've done some integrations with legal server, fairly extensive. There's also some integrations that already exist for Clio, which is a popular case management system for solos and small firms. And there's also integrations that have built for Google Sheets. So if you don't have a real case management system and you just want to have a place to store data, and it happens to be a database or air table or Google Sheets, those are both ones we've integrated. So that's kind of what I was talking about when I mentioned the glue, is that it's really very possible to build those integrations with pretty much any system that you have. There's a second part to the question. So the second part is does doc assemble have any ability to do something like a curl request to an external URL? It does. You probably wouldn't use curl. But yes, you can make an API request to it. It's very easy to use built-in Python code. Like there's a library call request, which makes it really easy to integrate with basically any API. And that's basically what you'd be doing with curl, I think, is probably what the question is getting at. Yeah, a lot of people do that. And even if it takes a really long time for that other site to respond, you could put the API request into a background task and then do it while the user is answering other questions. So, yeah, that is definitely very, very possible. Right. So this one is, I think I understand the question here. Is there a way to add a page to a PDF template depending on whether a field has a value or not? For example, if somebody uploads a photo of their photo ID, you'd like to be able to add a unique page to their PDF file with the photo ID as part of the printout. Yes, that is possible. You can combine PDF, split PDFs, make a lot of different changes to those files. Those are really well supported. Actually, I'll show you this demo will answer, both of the demos, kind of the categories of demos, will kind of cover some of the questions. Quick one on the PDF side. The redaction feature that is in there, that works with the PDF outcome and not just the Word docs, correct? It works with all the document assembly formats, including Word and PDF to PDF templating. Great. Back to the demo here. Okay. So I'm going to try to speed through this because I think I have about five minutes. So this is a longer one. This kind of shows you the full spectrum of what you can do with DocAssembly in kind of a user interaction context where you're answering questions back and forth. I won't show you all the features, but I think one kind of cool thing to show off is this text-to-speak feature which works in multiple languages. I choose its defense for eviction language. Jonathan mentioned the translation feature. It actually has six different languages for this particular tool, which is an eviction defense tool. And the text-to-speech works across those as well. There's lots of great ways that you can integrate help for the user. So one is these pop-ups, which can actually include images. This is great when you're trying to show somebody a picture of a document they're looking for. And there's also this help feature here that can be used in context. So this interview covers about 10,000 words. It was like a big project to translate. So it was really great working with Jonathan along the way to make sure that all the features that we needed were there in order to make the translation really successful. And I'm going to just kind of show you a little bit how it works. You can see some of the things you can embed in an interview in DocAssembly. I won't linger on any of the screen so I can get to the other demos as well. One thing that you can do is embed videos like this and have those context-specific places. Obviously you can have branching logic. So here I just chose a response that doesn't fit this interview so I'm being diverted away. I'm going to go back and choose one that lets me continue. And I'm going to kind of skip ahead. So this was a really long interview. Like I said, it's 10,000 words. It covers about 300 different questions. But I'm going to kind of let you see some of the key features. One thing you can do is have images that are embedded that let people find information that they need. And the address auto completion feature was also actually built at our request for this interview originally. Like a lot of things that kind of grew up along the way. That's really an amazing thing that Jonathan's done to be able to share all of that. So here this is a place where the user can put in their information so they get reminders about court dates. We'll get sent a text message and an email. So now if you can see here, like you can be really responsive to the user. So even though I miscapitalize it here, it can be respond to the fact that it's a housing authority. It knows that the tenants in public housing, just looking at the name, nothing too complex. The court here is chosen. There's a list of potential courts that we know their address. So built a way to automatically select the court based on the address of the person where they live. These people will date selectors, which I think we haven't shown before. And Quinn, you also open sourced that court list, right? So that so other people can just plug and play that in their own interviews if they're in Massachusetts. Exactly. Yeah. The open source culture is another really great thing about DACAssemble. So lots of ability to reuse things. And I want to show you, let you see like what the ending screen looks like so you can see what the documents that generates are. Could appear to be. And I'm going to try to not spend so much time on the individual details here. This is the completely stock look of DACAssemble. It's very, very customizable. Jonathan showed you like adding different screen parts, but you can also do things like change all of the colors, you know, visual look of the interface elements. Those are all customizable. One platform, I think that's in a pretty nice job is the Judicial Council of California in their particular customization. What we're able to do with a tool like this is really like, I mean, it's a long interview still, but you can do your best to avoid fatigue by breaking it up in different ways with visuals and videos and prompts and reminders that let people know how much progress they've made. And it makes it so they can really solve problems on their own. It's a modern look that people are familiar with and that are able to use on their own. We right now have 100 people a month. Okay, sorry. I'm with my son today. So this, for example, is just letting people see the results of the information that they've already provided at the end in just a minute now. I want to spend too much time on this, other than to let you see the output and how big an interview you can really create. That can be pretty manageable, too. Some of the features from a programmer's side are really nice in DACAssemble compared to some of the drag and drop interfaces, which can be a little bit harder to maintain sometimes. So the fact that you can use object-oriented techniques, you can organize your code into module files, those are things you don't really need to know or experiment with when you're doing a smaller interview and when you do a longer one, they can really speed up the development time. That's one of the things that really attracted me to DACAssemble as well. So now we are towards the end. Okay, so this is kind of a neat feature that let us use this with this project to save a lot of time for our users is the fact that we're filling out two forms, an answer form and a request for discovery. But, of course, the discovery request is 100% dependent on the claims. So this has done automatically the selection of discovery. This is kind of a neat thing, too. We wanted to let people sign the form so they had a packet that was ready to go and print out. They can either have it be texted to their smartphone, they can use this QR code to get the screen on their smartphone, or they can sign on the computer, which is what I'll do here. Or they can print it, of course. This is a really basic solution. There's a new feature that integrates with DocuSign, if anybody's interested in that. Yeah, if you want something more robust, my company actually built that and it's Radiant Law sponsored it and it's going to be open source for anybody to use. I'm hoping I can show you the other two things, even though we're maybe a minute or two over. This should be the last screen and we have one more prompt here. Okay. This is what the results look like. Someone asked about minipping PDFs. So here, all these forms were actually originally Microsoft Word files, but they've been converted to a single PDF. It makes it really easy to print the assembled forms. That's one of the things that you can do with DocuSign. So we made a customized cover page here, which is personalized to the person who did the interview. All of their forms are signed in the appropriate place and they have a really nicely formatted document that you have complete control over. All right, now I wanted to show you, if we can, just a couple of other things which let you see how to integrate with a case management system. So there's these tool, I kind of alluded to these generic interviews that are easy for our staff to customize their templates. This is a signature tool. You probably have the same exact problem. You need to get a release from a client and it's hard for them to get to your office in the time that you need the release. You can't move on to the next step of the case. So this is a really basic integration with legal server that pulls all of the fields from the case and then sends them to Docassemble. This is our demo site here on legal server. This is all open source, by the way. I don't remember which of these is going to be the best, but I'll just start with this one here. So this did not require any cooperation with legal server, if anyone is wondering about how to get this done. This actually completely works in the web browser and it just depends on you having a special customization, a new block that you've added to the profile. We got this list of interviews which uses the Docassemble API to ask for, hey, what interviews do you have available that I can use? And then when you click one of these links, it will send all the information that Docassemble has. Excuse me, that legal server has. For that case, it will send it over to your interview. It's a really simple integration. Oh, actually, I clicked on a different one that I meant to, but this is going to be improved and integrated even more than it is right now, but what we have is this list of forms is pulled live from SharePoint. And if I actually can edit it right in the web browser if I want to edit any of these documents here, I can select as many as I want. That list could be customized to what type of case it is, and I get them all generated up once. So if I happen to have any questions that are unanswered, like here, for example, it needs to signature for one of these letters. If I have any customized questions, those will be popped up, but the forms that I needed are available right there for me to see with the information filled in from the legal server using the letterhead. These are two other test files I won't show you. And if I click this link instead, this integration lets me send a document to my app to get signed. Again, the list of templates is pulled from SharePoint. I can also upload a new template. This is used for people who might have something like an agreement that needs to get signed that day in order to get filed with the court on time. I'm going to use an existing letter instead. So let's do this authorization release records. That's a really popular one. I can review the information that's there. I'm actually not going to email it, but if I clicked one of those options, this is the way that our clients normally get it. They get a link sent to them when they're ready to get it signed. So I'm going to actually visit the link directly as if it had been emailed to me. I can preview the document. I'm not being asked to sign. If I'm ready to sign it, I click yes, then I get an error. Sorry about that. I should have tested this for making revisions as I was working here. Let's see. Probably not necessary to actually show you the signature because you've seen how that works, but the idea is after that, this is the development server that I'm working on here. Sometimes things are broken. But after that, the file that's actually signed gets sent directly to the case. Here you can see some past sessions that I've been testing. So you can keep everything together in one place. All right. So now I think I really better stop now. Yes. I got to turn it over to Dornov for the next part. But thank you. That's the Docassemble legal server stuff is very impressive. Thanks. Hi, everyone. Can you guys hear me? Yeah. I'm going to assume that's OK. Thank you so much, Quinton and Jonathan for giving such a great explanation of everything that happens in Docassemble. So I'm going to tell you a little bit about what Documate is, what we do, and how we can help you build out Docassemble interviews. So we're Documate. We kind of started out a little bit differently. We used to be called Help Self Legal if you've heard of us. We were initially creating guide and interview workflows for a variety of different areas, starting with domestic violence in California, and then realized that we were spending a lot of time on development, found out about Docassemble, and kind of decided to build a no code solution to building Docassemble interviews. So we have since done that, and we're working with tons of legal aid organizations and also law firms. If you're a legal aid organization and you're providing these tools for free to the public, or using them internally, we give you an account for free. So feel free to reach out for us to set you up with that. What is Documate? So we allow you to provision and set up your own Docassemble instance on a... Let me make this actually, I think I'm in edit mode. So we allow you to... We basically, when you sign up for Documate, we set up your own Docassemble instance on a dedicated AWS server and database. So what that means is everything that Quentin was explaining in terms of setting up your Docassemble server, we can do that all for you. And what we do on top of that is we have a no code interface to create Docassemble interviews. At the same time though, we think that the no code interface can't necessarily do everything that you're thinking about doing. You may be able to create a beautiful guided workflow with lots of complex logic through the Documate interface, but you may still want to do more further integrations like, you know, set up a DocuSign integration or set up some kind of interesting text messaging service or a variety of other things. And you can still do that on Documate by accessing and modifying the code that we can provide you with below your Documate no code interface. So what that means is you can, whether you're a beginner lawyer with no coding experience and you just want a pretty interface to build interviews on or whether you want you're a more advanced coder or have an IT team that wants to take that interview and turn it into something more complex, you can do that all on our platform. And as I said, we're free for nonprofits. So I'm going to show you guys a little bit of a demo in a second, but I first just want to go over what the interface looks like from a bird's eye view. So the first step in the Documate platform is you build your interview. So there's two tabs to the Documate interface. One is the interview tab and one is the output documents tab. So with the interview tab, you will be going to be creating all those questions. Like in the example that Fenton just showed us where you have all the questions that are asked of the user, you set those all up in our system kind of like you would, you know, on type form or survey monkey if you've ever used either of those. Then the next step is you set up and load your documents, which can be Word documents, any other kind of DocX document that you get from Google, or it can be PDF documents. And I'm going to show you how you set those up in a second in the demo. And then finally, and I'm not going to show this part, I don't think, because we've already gotten a really good explanation from both Jonathan and Quentin on actually running the interview and what a Docassemble interview looks like. So the last piece is you run that interview and you can either use it internally or send it out to your clients or embed it on your website for your clients to use them. So I wanted to show you guys a little bit about how that interface is set up. If you wanted to use it from both the no code and the code interface. So for example, here I have this one basic question type. So I've created a question that's called client name and this is in the document interface and the graphical user interface. And then I've called it client name. I've made it a text question as opposed to the multiple choice question or another type of question. And then I've also given it a variable name, which is client name. You can, as you can do in Docassemble, you can create any variable name you want. But then I want to show you how that actually shows up in Docassemble. So you would do that in the top of the interface in Documate, but it shows up at the bottom inside of the code. And if you wanted access to this code, we could give you access to this code so you can edit it. And for example, we don't have that redaction feature that Jonathan just showed as part of our no code interface. But if you wanted to add something like that, you could just, you could ask us, you could say you want access to the code without having to fill out your own server or anything like that. So that is kind of a basic background of what our platform does. And I wanted to now jump into a demo of how you can build that on Documate. So when you log into your Documate in Docassemble, you're going to see a lot of things that you can do in Documate. So you're going to see a lot of things that you can do in Documate. You're going to see a lot of things when you log into your Documate instance. This is set up on your own server, so that means that here you could have it personalized to your own domain. You could also put your own logo at the top and have everyone from your particular organization access these interviews. So this is the Documate dashboard here. I have three different interviews here. You might have many more. And I'm going to click into this demo interview, and I'm going to show you how you can actually set up all of your workflows. So this is the creator screen. It's made up of two tabs that I showed you a little bit earlier. One is that interview tab right here where, and I'm not sure if this is big enough so maybe I'll make it a little bit bigger for you guys. So one is this interview tab right here where you're creating all your questions. And the other is this output documents tab where you're loading all of your templates, or documents, whatever they may be. So going to the interview piece, you can add questions just like you would. We modeled up this after SurveyMonkey and TypeForm. You can go to the bottom, click Add Question and add any of these different types of questions that we have below here. And then once it's, once you click onto the question type, you can actually type in whatever question you want that to be. And you give it a variable, just like you need to in Docassemble, and you can give it, for example, I have three options here, the multiple choice question, what's your marital status, the options are married, single and divorced. We can now set the thing, what you do with a variable name is you can do a few different things. You can set question logic, page logic, meaning which pages are actually shown. You can set document logic, meaning which documents are shown at the very end. And then most importantly you can tell your document how you want this information to populate in the end document. So starting with question logic, we have this question here, it is what is your marital status, variable name is marital status. Then we have question 10, which is what is your spouse's name? Now we obviously only want to ask what is your spouse's name if the person is not single and not divorced. So what we'll do is we'll go to this logic tab right here we'll toggle over to the logic tab and we can set that logic to this question right on the screen. So we can say show if, marital status, you can choose from all your variables is married. And I don't have the code interface in this piece right now because I haven't enabled that yet on this particular account, but if you had that code enabled you'd be able to scroll down and see this in live time populate into the YAML that Jonathan was showing in Doc Assemble at the very beginning. So that's how you would set up question logic. Then I also break up my interview, kind of like you saw in the interview we break it up into multiple different pages. So I have the second page and I have these same branching logic arrows on the page. So I can also click this set logic here to the specific page you know say show if, hide it choose the variable and choose the value. And then that page would be hidden or shown. Another thing that I want to show you guys which a lot of people like to use is a separate type of question. It's a looping question, we call it a repeating item. And this allows you to ask information about an item that there may be zero of or that there may be a hundred of or more. So children would be one example of that. So first you put in the item name which in this case I put children. It could be anything else like assets, bank accounts, anything else that you're gathering lists of information about. And this is what Jonathan and Quentin were talking about in terms of object oriented programming. So if you are comfortable with that, you would always be able to change that in the code and do additional things that weren't necessarily in the interface. So what you'll do is you're repeating item with an initial question which would be do you have any of the item and then a continuation question. Which is do you have any other of that item. So in this example I've used children so in the same way that I would ask someone if I were sitting across from a client in a live setting I might say do you have any children? If they say no then I would continue on with my interview of the client and they say yes though then I would ask them a variety of different questions about the attributes of those questions. And so here I've given some examples of that but this is all you can customize into how you want. And then once they give me the information for their first child then I would say okay do you have any other children. And I would continue to ask that in a looping fashion until we have asked about all of the different children. So that is the repeating item question and then similarly to what you've seen before you could also set up signature pages as well. So I've now set up my interview and that's all set up so now what I want to do is load my output documents. So I'll go over to this tab for the output documents. And here in this interview I've loaded two different documents one's a DocX or Word document and one's a PDF document. And you can set those both up I'll show you first how you set up your PDF document so what you'll do is you'll load it to our system you can click on that PDF and automatically our system will pick up all the names of those fields that are inside of your document. Even if they have underlying funky names we will kind of edit them so that they match exactly what they say right next to them. And so what you can do then is you can start bringing them to different questions inside of your interview. So in this interview for example I didn't have anything that was tagged to state bar number so that's going to remain untagged but if I wanted to tag a question to a different interview to a different variable I would say tag to question and then choose from my different variables. You can also checkbox this year and additional logic there. So I'll minimize that. And then the next thing I wanted to show you guys is how you set up your Word document. So DocuTable has a really great Word add-in but we've also built out a new one that allows you to do a little bit more complex logic for those of you who are less familiar with code. So I'm going to toggle over right here to my Word document here which I've already set up with a few things and I'll make this bigger for you guys as well. So I have and this Word add-in it works within all versions of Word so I'm on Word online right now but you could use it on Word for Mac or Word for PC and what it allows you to do is you API into your interviews so here you can see I had three interviews in my dashboard and they're all listed here so I'll choose my demo offer letter interview and I can set up all of the different conditions and variables that I have in this side panel. So for example I have simple variables here and right now you can still see the syntax we're actually going to be taking this out so you don't have to look at it all the time you can hide it but for now you don't actually have to put any of the syntax in our system does it for you. So for example let's say let's start with simple variables let's say I just wanted to put in a simple variable and I wanted to put the persons I don't know the let's say the street address and that's already a variable in my interview I could click insert and that will just put basic this is called I think it's ginger 2 formatting so it puts in the basic ginger 2 formatting for the basic variable so that's pretty simple Jonathan showed you a little bit of that before and then we can also do more complex things so let's say you wanted to do a conditional phrase or conditional paragraph I could do that so I'll start with showing you how you can do a conditional paragraph so let's say I wanted a phrase here that says I am married to show up if the marital status was married what I would do is I would highlight this phrase or this paragraph and then I would go to add conditional paragraphs so I open this up and then I go to show paragraph when and then I can choose the specific variable that I want to base it on so I'll say show paragraph when marital status is married and then I'll insert this syntax here and what that does is it actually populates the ginger 2 syntax for me right here so I don't have to touch that but that's now in there a few other things you can do with this with this the word add in is adding calculations so let's say you wanted to calculate numerical values I don't have any number values in this interview but you could add that in here and you could do you know multiplications adding that's a lot of time that's useful particularly in the in the situation with like C waivers if you're collecting a bunch of income information and then a bunch of expenses information and you want to subtract those subtract one from the other you could set up a calculation inside of your document that does that and then finally I want to show you guys lists and tables so this is that function that I was showing you before so you can do lists or tables of the children where you'd actually have the children actually populate based on however many children that you had added so I would just insert that field and it would enter it right there so that is the word add in to make it answer any more questions about that to go into more complexity there but I just wanted to show you a few more features on the document interface before before I turn it over to the next presenter we so you've now set up your your interview and you've created all your questions now you set up all your documents you've loaded them into document and there's a few other things you can do so you can set up conditional document outputs so let's say I wanted you know I have like a fee waiver that is only given to certain users I could set up conditions here where those documents would only be issued in certain cases so for example I could say it first shows me my default output documents which is just all of my output documents and I can remove those if I want to and then I can say maybe if you know let's say if marital status is married then I want to output only this document so you can add additional conditions there and then finally is this feature where you can send finalized send your finalized documents to a particular email address so this is particularly useful if you want to you know keep your information your documents within you don't want your end users to actually see your documents I could say I want to send my finalized documents to this email address and I don't want to display them to the interview taker or I can just display them to the interview taker so that's also all possible and then once you've done that you have your interview setup you have your output document setup then you would actually go ahead and run this interview which I won't actually run through the whole interview but as you can see you know you can fill out all those fields we have these conditions that we had set up in our no code interface that are now populated here as well so I won't go through that because I know we're running short on time but that is the basic all the basic features of document and I'm happy to answer any questions that anyone has as we go forward great thanks so much let me make Scott Kelly the presenter now Scott Kelly is from Community Lawyer Hi my name is Scott Kelly I'm president of Community Lawyer and we are an organization that works with dozens of bar associations across the country some statewide legal aid organizations and we provide tools to help you know lawyers more efficiently and affordably deliver their services so what I'm going to be taking you through today is our app builder which is built on of course doc assemble and is also a no code solution and what I wanted to focus on was you know some of this is going to be reviewing what functionally you've seen already but I'm going to take you through you know what a demo doc automation would look like what a demo intake would look like you know to show the basic functionality of the app builder and then I'm going to talk a little bit about how you can take the apps you build or the apps others build and share them with other legal aid practitioners across the country so we can really foster a community based around doc assemble where you know the work of one person in one state can be supporting the work of another person in another state so just diving straight in this is our app builder you can sign up it's completely free to get started you can make available publicly or completely free we host them for you and you can download the code at any time and run it on your own doc assemble server we also allow you to have your own doc assemble server that can be linked to your account if you want to have kind of like a dedicated domain so those are all different options but the simplest thing is just to sign up and get started so when I hit start new app I can actually go in and this is going to look very familiar again to those of you that are used to form builders you can go ahead and just build out an interview really rapidly in doc assemble yes no questions you can ask a question here you can define you can define variables let's say welcome and name and do you have children it's very easy to kind of do this format it you can add in formatting with the click of the button and you can add as many questions as you want and also associate complex logic with that I just want to show you what it actually looks like to kind of build there's lots of different blocks you can insert signature blocks info blocks final blocks repeated questions so there's a lot of options there and I definitely encourage you to look at our documentation and look at our videos which we have a pretty extensive library of I'm going to back out of this and actually show you what a more built out app looks like so I can just demonstrate some of the functionality now I'm going to start with intake and basically you can build out an intake with all sorts of different questions different kinds of logic so for example here we're asking what is your legal issue if someone says other we're going to want to display this question and so you can actually define that logic over here dynamically if someone types too much in here to describe their issue you can even add in some logic about how many characters they should be allowed to type before you give them an alert letting them know that they've typed too much and shouldn't be providing that much information you can here's going down you can also determine the display of different web pages based on answers in previous pages so right here if someone checks the checkbox for the criminal they're going to be show this page right here which says sorry we can't help you if they indicate that they have children they're going to be asked this repeated question much like Dorna you know demoed in her demo you can ask repeated questions and then output that into documents or into emails or whatever kind of output you want I know one of you had mentioned can I send this via webhook into my case management system or into Google Sheets or into Zapier the answer with DocSummel and with Community Lawyer built on it is an emphatic yes and then this last thing I want to show you is you can also use different questions to perform calculations so right here we've got a simple household income household size we've got an eligibility calculation down here you'll notice that we do a lot of things to sort of help you out and make sure that as you're building your interviews don't break so if I change this the name of this variable eligibility calculation to just um eligibility formula let's say I just don't like the name notice how it dynamically updated down here so you don't have to worry about going through the rest of your interview and updating things we also don't present you with for example operators in an expression like this that don't match the kind of expression you're working with so right here you're performing a calculation with numbers you don't want to see options here that are like is alphabetically before or is alphabetically after you just want to see plus minus divide multiply by so that's we're doing a lot of work in the background to make sure that as you're building your apps sort of seamlessly update and arm breaking so yeah we can perform this little eligibility calculation based on your household size income and then show you whether you're eligible or not so I'm going to go ahead and actually run through this this is my first time using a demo 11 minutes and we've got several questions here so two more minutes of demo then we really need to hit the question okay um yeah so then I'll go through this really quickly so here's my name if I do criminal like I said I'm going to get screened out so I get an answer here I'm going to get screened out sorry if I do other and I type too much I'm going to get a notification so you can really build in complex logic and have pretty robust intakes I'm going to do child name child age and then I'm going to move on that's a very old child sorry if I'm moving a little fast because I do want to get to the other app very quickly and then household size household income if my household income is quite great and my household size is low I'm not eligible but if it's you know I don't make very much I have a large family I'm going to see that I'm eligible so you can build this out it's fully customizable I definitely encourage you to take a look at the settings tab where you can change the styles of your interviews and everything like that I also want to show you the document automation side of things if you could give me a moment so you can upload your own template so here's a PDF template that I've uploaded and you can actually draw fields directly on that PDF and fill in the responses that are being filled in by your interview if I go forward you can see down here that I'm filled with my last name first name middle name I'm doing some check boxes right here which you can insert if you want and we dynamically only show you check box variables again we're doing a lot of work in the background we also allow you to upload Word documents or create Word documents from scratch this one's created from scratch just like with a document proper you can add all sorts of logic on different variables so I'm only going to show this variable if this is true otherwise I have this default variable that gets filled in I'm going to go ahead and just run through this very very quickly and yeah actually you get the idea if you run through it you're going to assemble some nice documents at the end I can share these links to these apps afterwards and you can check them out one last thing I know I'm running out of time so I'm just trying to move fast is we also have a feature where when you build your apps you can actually publish them to communities where they can be private communities that are member only or they can be public communities where members of the public can go and use those apps so for example I've set up a so you go over to activation you go over to communities and I've set up a private community that I'll show you right here here we go it's called A to J and you can actually go here and see apps that have been published by others so for example this app right here is based on an app that we created for New Mexico Legal Aid it's a very extensive legal aid intake app you can learn more about it I'm going to share the link to this community so you can sign up to it it's a very extensive sort of model intake and you can use it you can duplicate it, you can modify it and I encourage other people to join this community and actually go ahead and publish their own apps as a resource for other members of the Docassemble community so you can go through this app on your own but I just wanted to show you that that was available and I'm going to drop the link that you can use to actually sign up for that community and you can create your own if you want to it right after I get done presenting I know I'm out of time so I guess I'll stop I just wanted to clarify because you're going through that pretty quickly are you saying that to make PDF templates we don't have to buy Adobe Acrobat to make the forms that is use community lawyer? yeah that's a really good point so yep all you have to do is go ahead and you can get started building an app you can upload your PDFs I'm going to go ahead and upload my PDF if your PDF has drawn targets on it already it's going to recognize those drawn targets you can add your own drawn targets at any time there we go and you can use our tool to end to end create document automations without ever having to use Adobe to set up your documents in the first place and can you add a signature image into a PDF template? absolutely let's do that right now so I'm going to go ahead and add a signature block we're just going to call it signature and I'm going to have a template right here that I just uploaded I'm going to add a signature field right here it recognizes that signatures should be here let's do today's date that's a background variable that we have just to make things easier for you and really quickly let's just go ahead and let's go ahead and run this app so you can see this work end to end so I'm going to hit final block I'm going to go ahead and attach the document you can also send this document by email you can have it conditionally attached if you want to so I'm going to go ahead up here signature go ahead and run this give it a second and here we go let's sign right here let's say continue and the document will be assembled below I go ahead and hit my run over charge when you're running it in test mode we're going to have these watermarks on the document but if you're running it live it's not going to be there there's our signature right here there's the date right there you can't really see it but you get the idea alright cool so I think we had a couple questions in the chat so the first one that we've got here is over document you mentioned the non-profit model what is the cost or licensing with regards to a for-profit firm so non-profits can be on our platform for free the only thing is if you want to set it up on your own domain and we're setting up a new provision server for you on AWS and we just pass on the cost that we incur from AWS and usually that's around $25 a month okay and what's the for-profit licensing cost the for-profit licensing cost is it depends on the tier you're on it's actually all on our website we're very transparent about it but the lowest tier is $99 a month for two users second tier is $199 for five users number of authors or the number of people doing assemblies number of authors okay and is it unlimited assemblies yes okay excellent yeah there were some questions that were kind of like comparing the last two options but I'm not sure how to put those vest into words any questions afterwards about kind of specific functionality I'm sure of me and Scott are probably both willing to answer those questions if you guys want to reach me I'm at dorna d-o-r-n-a at document.org so if you ever have any questions you can email me we have links to our videos and some of our materials on our website and you'll learn more tab as well excellent we can definitely try to get those links into a summary about this also up on the website I think that covers most of our major questions we definitely had somebody who asked about editing on the platforms or PDFs once they are up or whether you really need to use an external editor to do that and I think the answer to that would be platform specific what capabilities if somebody's got a PDF form that they want to put up add in the variables they need to be done externally on document or is that something you can do after you've uploaded it does that make sense did you get that dorna sorry what was the question you woke up a little bit once a PDF once they have a PDF that they wish to automate what options are there once it's been uploaded to edit or change it within your platform or is that all done externally oh got it so when you load it to our system it changes the field name so that they match whatever is written next to them but otherwise you can't edit the actual the PDF itself so you do need to do that externally once you generate the document though just like you can in doc assemble you can edit that document like let's say you put the client's name Jane Doe and you wanted it to be Jane El Doe you can do that at the end so excellent there's a question about sharing this webinar it should be posted hopefully within a week to our YouTube channel it will be publicly available anybody can watch it please go ahead and share it okay as we've got about two more minutes here one last could we go through each speaker and the best ways to contact them just so that people can follow up alright this is Jonathan Pyle the best way to reach me is to join the doc assemble Slack and post a message either privately or in the questions channel okay and you are an organizer for the event Jonathan if you can type the Slack address into the chat and send it to the entire audience we'll try to get some people on there this is Quinton a good way to reach me is either QStainhouse actually at QStainhouse on Twitter is a good way or lemmellegal.com okay I'll put that on the chat if I can and this is Dorna the best way to reach me is by email at dorna.documate.org and also on Twitter at Dorna Moini at Take Documate Ball we also have a live chat on our website so if you're ever on documate.org you can always type in the chat box and we're really responsive there okay Scott you have been unmuted hi there yeah this is Scott you can email me at Scott at community.lawyer you can reach out to us there's a little chat widget on our website at any time and use it myself or Toma or one of the team members we'll get back to you very shortly we also have a link on our website where you can sign up to have one-on-one conversations with us we love the work that legal aid organizations are doing and we want to support that and we're free to use and here to help so let us know okay and we've got one last question here this is for Jonathan are there any major features for docassemble that are not yet implemented but they are definitely looking at or considering um I tend to implement them very quickly so I don't have a lot lined up the thing I was working on this morning was ensuring that you can run two different interviews at the same time in the same browser so that's coming excellent so in other words if we've got a feature we really like we just have to convince you it's interesting and it may show up in 24 hours sometimes longer but yeah okay excellent well thank you all so much this has been really informative this platform has matured so much um in the last few years there's so much more integration and community support the Slack channel it sounds like there's about 500 people who are part of that um working on these and I look forward to seeing where this goes over the next few years I also know that a few of the people who are here will be at the um innovations in technology conference in Portland in January um I'll definitely be there I look forward to chatting with some people hopefully there is a hackathon held before the event in which we may be able to play with this tool and come up with some other awesome stuff to help the community thank you all for coming out today thanks everybody thank you for organizing this