diff --git a/docs/get_started/intro.md b/docs/get_started/intro.md
index e66787dab..23c035905 100644
--- a/docs/get_started/intro.md
+++ b/docs/get_started/intro.md
@@ -58,7 +58,7 @@ To join the community, just [email us](mailto:litlab@suffolk.edu)!
## Get involved/support our work
- We offer affordable Docassemble hosting and e-filing tools for courts and legal aid organizations. Interested? [Email us!](mailto:litlab@suffolk.edu)
-- We need [volunteers](volunteer.mdx) to help update, test, and translate interviews. We also need volunteers to help us organize volunteers.
+- We need [volunteers](/docs/volunteer/volunteer.mdx) to help update, test, and translate interviews. We also need volunteers to help us organize volunteers.
- We also accept [donations](https://www.givecampus.com/campaigns/70271/donations/new) to help us continue developing these free and open-source tools.
## Our code
diff --git a/docs/react_components/VolunteerFormLink.jsx b/docs/react_components/VolunteerFormLink.jsx
index 8f2cecde3..3b4ca10db 100644
--- a/docs/react_components/VolunteerFormLink.jsx
+++ b/docs/react_components/VolunteerFormLink.jsx
@@ -9,17 +9,17 @@ export function VolunteerFormLink( props ) {
const { search } = useLocation();
const urlParams = new URLSearchParams( search );
- const source = urlParams.get(`source`);
+ const source = props.source || urlParams.get(`source`);
let sign_up_text = `Sign up to express your interest`
if ( source ) {
sign_up_text = `Sign up to volunteer`
}
- return ()
+
+ )
};
diff --git a/docs/volunteer/flows.mdx b/docs/volunteer/flows.mdx
new file mode 100644
index 000000000..4d9d81bb8
--- /dev/null
+++ b/docs/volunteer/flows.mdx
@@ -0,0 +1,138 @@
+---
+id: volunteer_flows
+title: Volunteer flows
+sidebar_label: Workflows
+slug: flows
+---
+
+import { VolunteerFormLink } from '/docs/react_components/VolunteerFormLink.jsx';
+
+Welcome organizers, this page is for the flows different crews of volunteers go through at different stages of their participation. For everyone else, we'd love to have you on board too, so come sign up!
+
+
+
+
+
+
+ All
+
+## Group intro sessions
+
+1. Schedule 2 intro sessions at different times of the week/day.
+1. Send email to new participants with:
+ - an invitation to Microsoft Teams
+ - a form to fill out their availability for those 2 intro session options (or neither)
+1. Run the intro sessions.
+ 1. Introduce organizers and volunteers.
+ 1. Describe the current program and goals with visuals:
+ - https://courtformsonline.org/
+ 1. Link to the community agreement doc.
+ 1. Describe expectations.
+ 1. Give venues for check-in.
+ 1. Give schedule for meetings and office hours.
+ 1. Ideally guide interested folks while they log onto Teams and join the `#Volunteers` channel.
+ 1. Arrange for the next point of contact.
+ 1. Answer questions.
+1. Follow up with those who missed both sessions.
+1. Update the volunteer tracker.
+
+
+
+
+
+ Organizers
+
+## Organizers start
+
+Join the Microsoft Teams `#Volunteer Ops` channel.
+
+
+
+
+
+
+
+
+ Builders
+
+## Builders start
+
+1. [Register for a LIT Lab Docassemble server account](https://apps-dev.suffolklitlab.org/user/register) on the development server. You will then be a regular user. Use your registration email address to [email us](mailto:litlab@suffolk.edu "mailto:litlab@suffolk.edu") a request for a developer account. Remember to include some context about yourself.
+1. If you have a GitHub account, log into your GitHub account. If you lack a GitHub account, make one:
+ 1. Choose a GitHub username. If you want more privacy, choose a name that is unrelated to you and unrelated to anyone and anything in your life.
+ 1. [Make the GitHub account](https://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F&source=header-home).
+ 1. If you want to increase privacy, set [your GitHub account's email settings](https://github.com/settings/emails) to keep your email private and choose to block pushes that expose your email.
+1. Go to [your GitHub integration page on the LIT Lab Docassemble server](https://apps-dev.suffolklitlab.org/github_menu) and authorize your GitHub account.
+1. Attend training sessions. [Builder training session resources are here](https://docassemble.org/docs/volunteer/resources.html#training).
+1. Complete the final project.
+1. Ask an organizer to add you to the LIT Lab GitHub organization volunteer team.
+
+## Builders first issue
+
+_You will do one starter issue as an introduction to LIT Lab's GitHub workflow._
+
+When you are first starting to learn to build forms, it is often hard to judge the level of difficulty of an issue. The DAL crew tries to identify good issues for people new to the project, but we are sometimes wrong.
+
+1. Search for [a starter issue in LIT Lab's GitHub repositories](https://github.com/search?q=org%3ASuffolkLITLab+is%3Aissue+label%3Astarter+is%3Aopen&type=issues). The DAL crew tries to pick out good starter issues, but sometimes we miss the mark.
+1. Check if this issue looks like it is about a typo.
+ 1. If you think the issue is about a typo, definitely continue.
+ 1. If the issue is about something else, decide if it is a good match for your level of experience. If you are unsure, ask a more experienced member of the Builder crew. Michelle is good resource for this. If you decide to take on the issue, continue. Otherwise, look for another issue.
+1. Check if the issue is still up to date. Some may have been fixed without being closed or irrelevant for some other reason. If the issue should be closed, write a comment about why it can be closed and close the issue. Look for a different issue.
+1. Assign yourself to the issue.
+1. If the issue is comfortable, here is a summary of the GitHub workflow. It is very similar to [the process that training module 3 describes](https://youtu.be/JpOaS8YeMvc?list=PLy6i9GFGw5Gy3oFiIhBpj5gn5PP_Vbd-5&t=2658).
+ 1. Make a new Project on the docassemble server.
+ 1. Pull the code from GitHub into your new Project.
+ 1. Make the changes necessary to resolve the issue and no more.
+ 1. Run the form.
+ 1. If there is a problem, edit and run the form again. Repeat until complete.
+ 1. Go to the Project's Packages page.
+ 1. Press the "GitHub" button, choose to make a new branch, add a commit message that is a good reminder of what you did, and press "Commit".
+ 1. On GitHub, make a pull request with that branch.
+ 1. In the main comment of the pull request, write `Closes #` and then the issue number. For example, `Closes #42`.
+ 1. Still in the main comment, describe the changes you made in your code and why.
+ 1. Request a review from `@SuffolkLITLab/dal-reviewers`
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/volunteer/resources.mdx b/docs/volunteer/resources.mdx
new file mode 100644
index 000000000..9c99c41b4
--- /dev/null
+++ b/docs/volunteer/resources.mdx
@@ -0,0 +1,133 @@
+---
+id: volunteer_resources
+title: Volunteer resources
+sidebar_label: Resources
+slug: resources
+---
+
+import { VolunteerFormLink } from '/docs/react_components/VolunteerFormLink.jsx';
+
+Welcome volunteer, these resources may be of help. For everyone else, we'd love to have you on board too, so come sign up!
+
+
+
+## General
+
+### Contacts
+
+Find us on Microsoft Teams!
+
+**Volunteer organizers:** Michelle, JJ, Chris
+**LIT Lab staff:** Sam, Quinten
+
+
+### Links
+
+- [LIT Lab Docassemble development server](https://apps-dev.suffolklitlab.org/)
+- [LIT Lab GitHub organization](https://github.com/SuffolkLITLab/)
+- [Docassemble slack](https://docassemble.org/docs/support.html#slack)
+
+
+
+### Current projects {#projects_general}
+
+- [US states and territories Delegation of Parental Rights forms GitHub project](https://github.com/SuffolkLITLab/50StateDelegationOfParentalRights#readme)
+
+
+
+## Organizers
+
+
+- [Volunteers sign up, intro, and current updates page](./volunteer.mdx)
+- [Volunteer signup form link](https://apps.suffolklitlab.org/interview?i=docassemble.DALVolunteerSignup:main.yml&source=resourcesorganizing)
+- Scheduling tool proposals:
+ - https://voteon.date/. Example admin results page: https://voteon.date/EGFdiu/results/6K1dmq.
+ - https://www.when2meet.com/. Some people find it confusing.
+- Contact other organizers to get links for volunteer tracking tools.
+
+
+
+
+### Current projects {#projects_ops}
+
+- [GitHub project **board** for US states and territories Delegation of Parental Rights](https://github.com/orgs/SuffolkLITLab/projects/95)
+
+
+
+
+
+## Builders
+
+### General
+
+- [Register for a LIT Lab Docassemble server account](https://apps-dev.suffolklitlab.org/user/register) on the development server. You will then be a regular user. Use your registration email address to [email us](mailto:litlab@suffolk.edu "mailto:litlab@suffolk.edu") a request for a developer account. Remember to include some context about yourself.
+- [LIT Lab docassemble development server general link](https://apps-dev.suffolklitlab.org/).
+- [You LIT Lab docassemble Projects](https://apps-dev.suffolklitlab.org/playgroundproject).
+- [DAL documentation about PDF labels and variable names](https://assemblyline.suffolklitlab.org/docs/authoring/label_variables).
+- [ALWeaver](https://apps-dev.suffolklitlab.org/run/generator) to make first drafts of interviews.
+- [Experimental PDF editor](https://nonprofittechy.github.io/pdf-editor-ui/).
+- [GitHub how-to's](https://assemblyline.suffolklitlab.org/docs/authoring/github).
+- ALKlin automated testing:
+ - [ALKiln setup](../components/ALKiln/setup.mdx).
+ - [ALKiln test writing](../components/ALKiln/writing_tests.mdx).
+ - [ALKiln intro](../components/ALKiln/intro.mdx).
+- [Docassemble documentation](https://docassemble.org/docs.html).
+
+
+### Checkers
+
+- [Text difference checker to compare different versions of text](https://www.diffchecker.com/).
+- [Python syntax validator](https://extendsclass.com/python-tester.html).
+- No validators found for Mako (Mako is Markdown with variables and python).
+- [Quick markdown previewer](https://markdownlivepreview.com/). Can't use variables.
+- [YAML validator](https://codebeautify.org/yaml-validator/) as long as you ignore the one error that says "expected a single document in the stream, but found more".
+- [**Very** simple Jinja validator](https://www.dainiak.com/jinja2-playground/). Only validates very, very simple Jinja. For example, syntax like `%p` (as in `{%p if True %}`) gets errors.
+- [Gherkin syntax validator](https://www.assertthat.com/online-gherkin-editor) for ALKiln tests.
+
+
+### Training
+
+- [Training module GitHub repository](https://github.com/SuffolkLITLab/docassemble-DALTraining/)
+- For reference and diff checking, because cheating is self-defeating, [here are the question files for the different modules](https://github.com/SuffolkLITLab/docassemble-DALTraining/tree/main/docassemble/DALTraining/data/questions).
+- [Training module final project instructions](https://github.com/SuffolkLITLab/docassemble-DALTraining/?tab=readme-ov-file#final-project)
+
+1. [Training module 1 on YouTube](https://www.youtube.com/watch?v=XwjDOPxdoJU&list=PLy6i9GFGw5Gy3oFiIhBpj5gn5PP_Vbd-5&index=1)
+1. [Training module 2 on YouTube](https://www.youtube.com/watch?v=ap_XozvLpFk&list=PLy6i9GFGw5Gy3oFiIhBpj5gn5PP_Vbd-5&index=2)
+1. [Training module 3 on YouTube](https://www.youtube.com/watch?v=JpOaS8YeMvc&list=PLy6i9GFGw5Gy3oFiIhBpj5gn5PP_Vbd-5&index=3)
+
+
+
+
+
+
+
diff --git a/docs/volunteer.mdx b/docs/volunteer/volunteer.mdx
similarity index 51%
rename from docs/volunteer.mdx
rename to docs/volunteer/volunteer.mdx
index ee96a03f0..ad25ca6a5 100644
--- a/docs/volunteer.mdx
+++ b/docs/volunteer/volunteer.mdx
@@ -1,13 +1,15 @@
---
-id: volunteer
-title: Volunteer with the Document Assembly Line
-sidebar_label: Volunteer
-slug: volunteer
+id: sign_up
+title: Sign up to volunteer
+sidebar_label: Sign up
+slug: sign_up
---
import { VolunteerFormLink } from '/docs/react_components/VolunteerFormLink.jsx';
-This volunteer program aims to train and organize volunteers to build, translate, test, and maintain digital guided forms that everyday people can use to fill out critical legal forms online. You can see some of these on [Court Forms Online](https://courtformsonline.org/). We would love your help!
+Welcome!
+
+The Document Assembly Line volunteer program aims to train and organize volunteers to build, translate, verify, and maintain digital guided forms that everyday people can use to fill out critical legal forms online. You can see some of these on [Court Forms Online](https://courtformsonline.org/). We would love your help!
@@ -15,7 +17,7 @@ This volunteer program aims to train and organize volunteers to build, translate
Since before COVID‑19, all over the US, many people have not been able to get to critical court services or legal help. For example, parents who need to leave home for various reasons need specific forms and processes to set up legally supported access to medical care or schools for their children through family or community members.
-Digital forms—online guided interviews—are a proven way to bridge that gap for many, helping clarify forms and processes with access from home, yet those digital forms remain scarce. During COVID-19 this project, the Document Assembly Line (DAL) at [SuffolkLITLab](https://suffolklitlab.org/), in Massachusetts, ran a massive volunteer effort, and now partners with courts and organizations in [numerous states](https://courtformsonline.org/) to provide free online forms. We are currently looking to grow our new volunteer initiative to increase our reach across the US.
+Digital forms—online guided interviews—are a proven way to bridge that gap for many, helping clarify forms and processes with access from home, yet those digital forms remain scarce. During COVID-19 this project, the Document Assembly Line (DAL) at [Suffolk LIT Lab](https://suffolklitlab.org/), in Massachusetts, ran a massive volunteer effort, and now partners with courts and organizations in [numerous states](https://courtformsonline.org/) to provide free online forms. We are currently looking to grow our new volunteer initiative to increase our reach across the US.
:::info[**Current initiative**]
## Remote administration and logistics volunteer opportunities
@@ -24,7 +26,7 @@ Digital forms—online guided interviews—are a proven way to bridge that gap f
**Objective**: We are starting a new volunteer push to help people in under-served communities across the United States obtain the legal protection they need, even when they cannot reach a courthouse.
-*At this stage we are assessing the feasibility of expanding our new volunteer program, and organizers are a crucial piece of the puzzle. This journey will take organizational stamina and that is why we are starting with our organizers.*
+*At this stage we are assessing the feasibility of expanding our new volunteer program, and organizers are a crucial piece of the puzzle. This journey will require organizational stamina and that is why we are starting with our organizers.*
**Volunteer organizer role**:
We need people who can coordinate and steadily grow a volunteer base that builds, translates, tests, and maintains online legal forms. As a team, we are looking for people who can communicate well, work independently, track progress, and assess strengths and obstacles. We will need some volunteers to have comfort with one or more of the following tools: email, Zoom, Microsoft Teams, Slack, project boards, spreadsheets, and GitHub. Your work will shape how we roll out the program and keep it responsive to state‑specific needs.
@@ -36,53 +38,75 @@ We need people who can coordinate and steadily grow a volunteer base that builds
You can join one or more of several volunteer teams:
-* [Volunteer organizing.](#volunteer-organizing) Strengthen our volunteer organizing efforts.
-* [Updates.](#interview-updates) Help us work through our backlog of interview improvements and updates.
-* [Testing.](#testing) Test interviews and create issue reports to help us make improvements and updates.
-* [Translation.](#translation) Review translations for accuracy.
-* [Information gathering.](#information-gathering) Gather and update the information sources that power interview features, like courthouse addresses.
+
+
+* **[Organize volunteers](#volunteer_organizers)**: Strengthen our volunteer organizing efforts.
+* **[Legal subject matter experts](#smes)**: From state-specific legal experts to law students, folks from the community who can make sure our forms are legally accurate.
+* **[Build and update forms](#builders)**: Help us make new forms and work through our backlog of interview improvements and updates to take our existing forms to the next level.
+* **[Translators](#translators)**: Review translations for accuracy.
+* **[Other roles](#other)**: We need to bring many skills and perspectives to the table to reach our goals.
+ - Local community organizers for the communities we are trying to serve.
+ - Usability testers give us feedback on our forms.
+ - Bug hunters test interviews for bugs.
+ - Data verifiers verify that information, like courthouse addresses, are up to date.
+ - Plain language wizards.
+ - Documentation writers.
+ - Copy editors.
+ - Everything else!
All volunteer work is done remotely, and all training, meetings, and communication happen online, via Zoom, Microsoft Teams, and GitHub.
-### Volunteer organizing
+### Volunteer organizers {#volunteer_organizers}
We plan for the volunteer organizing team to recruit, onboard, coordinate, and assess strengths and obstacles for the volunteer program. We could use folks with good communication and coordination skills, the ability to work independently, and the ability to track status and progress of projects and volunteers. In addition, we will need some volunteers to have comfort with one or more of the following tools: Email, Zoom, Microsoft Teams, Slack, project boards, spreadsheets, and GitHub.
Volunteer organizing is an ongoing project and you can participate when you are able. We also encourage you to think about how this role fits with your current commitments.
-### Interview updates
+### Legal subject matter experts {#smes}
-Update interviews from a backlog of tasks. This involves coding in Docassemble, but **no coding experience is necessary to join this team**. We will teach you everything you need to get started and support you with regular check-ins. You just need to be willing to learn!
+A couple of levels of legal experience can be useful here. We need some with deep knowledge who can review our forms to make sure we are apply the law correctly, especially for state-specific and legal-area-specific forms. We could also use those who can do crucial work that takes less expertise, such as checking whether our forms are up to date with the latest versions of the current court PDFs.
-Updating interviews is an ongoing project, and the updates team requires a long-term commitment. Volunteers should be able to commit at least 5–10 hours per month for at least 3 months.
+Lending your expertise is on a per-participant and per-form basis. We can spread the work among those available and will continue to actively seek out more help. As far as reviews go, the time for each review will depend on the complexity of the form and there usually need to be several rounds of review/edits, but they can be spread out over time and among volunteers.
-### Testing
+### Builders
-Test interviews independently or live over Zoom, depending on what we need to test. No experience or legal knowledge is necessary.
+Update interviews from a backlog of tasks. This involves coding in Docassemble, but **no coding experience is necessary to join this team**. We will teach you everything you need to get started and support you with regular check-ins. You just need to be willing to learn!
-We organize an interview testing project about once a year, usually during the summer. Otherwise, we ask for testing volunteers as needed, by notifying the testing team via email and Teams. To get notified, complete the [signup form](#sign-up-to-volunteer) so we know you are interested.
+Building interviews is an ongoing project, and the updates team requires a long-term commitment. Volunteers should be able to commit at least 5–10 hours per month for at least 3 months.
-### Translation
+### Translators
Review draft translations for accuracy to help make interviews more accessible. The translation team primarily needs native speakers to ensure clear translations.
We ask for translation volunteers as needed, by notifying the translation team via email and Teams. To get notified, complete the [signup form](#sign-up-to-volunteer) so we know you are interested.
-### Information gathering
+### Other
-Gather and update information that powers guided interview features. For example, guided interviews may fill in courthouse addresses or suggest other resources, but that information is only useful if it is up-to-date.
+It would be impossible to list all the types of support these kinds of projects need. If you have other experience or skills to contribute, we would love to hear from you! Examples include:
-We ask for information volunteers as needed, by notifying the information team via email and Teams. To get notified, complete the [signup form](#sign-up-to-volunteer) so we know you are interested.
+- Local community organizers for the communities we are trying to serve.
+- Usability testers give us feedback on our forms.
+- Bug hunters test interviews for bugs.
+- Data verifiers verify that information, like courthouse addresses, are up to date.
+- Plain language wizards.
+- Documentation writers.
+- Copy editors.
+- You!
## Expectations
-We expect volunteers who are actively working on a project to check in regularly. In general, check-ins are brief. They are usually Zoom meetings, but in some cases we may use asynchronous updates in Teams.
+We expect volunteers who are actively training or working on a project to check in regularly. In general, check-ins are brief. They are usually Zoom meetings, but in some cases we may use asynchronous updates in Teams.
The purpose of check-ins is to keep the project on track by sharing your progress, plan, and questions or blockers with your team:
1. **Progress.** What did you do last week?
2. **Plan.** What are you going to do this week?
-3. **Questions/blockers.** Is anything preventing you from making progress? Blockers can include questions, tech support issues, uncooperative third parties, etc. We often address questions and blockers live during meetings, or we can follow up later.
+3. **Questions/blockers.** Is anything preventing you from making progress?
+ Blockers can include questions, tech support issues, uncooperative third parties, etc. We often address questions and blockers live during meetings, or we can follow up later.
Also, let us know if you need something else to work on.
diff --git a/docusaurus.config.js b/docusaurus.config.js
index 4897fd628..18d657eab 100644
--- a/docusaurus.config.js
+++ b/docusaurus.config.js
@@ -138,6 +138,10 @@ module.exports = {
{
from: '/docs/get_started/working_with_teams',
to: '/docs/archive/working_with_teams'
+ },
+ {
+ from: '/docs/volunteer',
+ to: '/docs/volunteer/sign_up'
}
],
diff --git a/sidebars.js b/sidebars.js
index 54ac6bb1c..49493348f 100644
--- a/sidebars.js
+++ b/sidebars.js
@@ -24,7 +24,15 @@ module.exports = {
"href": "/docs/overview",
"description": "View developer documentation"
},
- 'volunteer',
+ {
+ label: 'Volunteer',
+ type: 'category',
+ items: [
+ 'volunteer/sign_up',
+ 'volunteer/volunteer_resources',
+ 'volunteer/volunteer_flows',
+ ]
+ },
'get_started/development_roadmap',
'contributors',
{
diff --git a/src/pages/index.tsx b/src/pages/index.tsx
index 82652e5cc..68bc15038 100644
--- a/src/pages/index.tsx
+++ b/src/pages/index.tsx
@@ -41,7 +41,7 @@ function Home() {
Get started
-
+
Volunteer