From ccadc481999e6fcebc59fda68a293af96d7061a2 Mon Sep 17 00:00:00 2001 From: Cameron Napolitano Date: Tue, 9 Jun 2026 17:03:18 -0400 Subject: [PATCH] Added Fixit Clinic exploration script & initial findings --- .../samples/get_fixit_clinic_events-00.json | 1274 +++++++++++++++++ .../samples/get_fixit_clinic_events.py | 171 +++ 2 files changed, 1445 insertions(+) create mode 100644 data-explorations/fixit-clinic/samples/get_fixit_clinic_events-00.json create mode 100644 data-explorations/fixit-clinic/samples/get_fixit_clinic_events.py diff --git a/data-explorations/fixit-clinic/samples/get_fixit_clinic_events-00.json b/data-explorations/fixit-clinic/samples/get_fixit_clinic_events-00.json new file mode 100644 index 0000000..7dbf067 --- /dev/null +++ b/data-explorations/fixit-clinic/samples/get_fixit_clinic_events-00.json @@ -0,0 +1,1274 @@ +[ + { + "uid": "0n78if4ob85s3au57imikiiq56@google.com", + "summary": "USA-MA-Medford Medford Public Library", + "location": "", + "location_name": "", + "location_address": "", + "location_city": "", + "location_zip": "", + "description": "", + "start": "2023-05-06T20:00:00+00:00", + "end": "2023-05-06T23:00:00+00:00" + }, + { + "uid": "6bpcfrv2dimoodm4ga3g8ppabo@google.com", + "summary": "USA-MA-Arlington", + "location": "", + "location_name": "", + "location_address": "", + "location_city": "", + "location_zip": "", + "description": "", + "start": "2023-05-06T21:30:00+00:00", + "end": "2023-05-06T22:30:00+00:00" + }, + { + "uid": "3qehjfcm4fhgo372tlf3g6khqm@google.com", + "summary": "USA-MA-Acton", + "location": "", + "location_name": "", + "location_address": "", + "location_city": "", + "location_zip": "", + "description": "", + "start": "2023-06-17T14:00:00+00:00", + "end": "2023-06-17T15:00:00+00:00" + }, + { + "uid": "4s4ivetl7g93jvekab450v5rj2@google.com", + "summary": "USA-MA-Plymouth", + "location": "", + "location_name": "", + "location_address": "", + "location_city": "", + "location_zip": "", + "description": "", + "start": "2023-07-29", + "end": "2023-07-30" + }, + { + "uid": "34bbe44dldqm5plcn781c42r5o@google.com", + "summary": "USA-MA-Medford Medford Public Library", + "location": "Charlotte and William Bloomberg Medford Public Library, 111 High St, Medford, MA 02155, USA", + "location_name": "Charlotte and William Bloomberg Medford Public Library", + "location_address": "111 High St", + "location_city": "Medford", + "location_zip": "02155", + "description": "https://www.facebook.com/events/1667753383707527/
Register items at https://bit.ly/itemcheckin
Volunteer to Fixit Coach at http://bit.ly/inpersoncoachsignup", + "start": "2023-10-14T17:00:00+00:00", + "end": "2023-10-14T18:00:00+00:00" + }, + { + "uid": "0ucfh9i4o71anr9k6484mquh0f@google.com", + "summary": "USA-MA-Boston Codman Square Branch Boston Public Library", + "location": "690 Washington St Dorchester MA 02124", + "location_name": "", + "location_address": "690 Washington St Dorchester MA 02124", + "location_city": "", + "location_zip": "", + "description": "https://bpl.bibliocommons.com/events/64c2ce645919183600054acf", + "start": "2023-10-21T14:00:00+00:00", + "end": "2023-10-21T17:00:00+00:00" + }, + { + "uid": "1da1lfq7s5183bet28ls9ek5bp@google.com", + "summary": "USA-MA-Beverly Beverly Farms Branch Library", + "location": "Beverly Public Library - Farms Branch, 24 Vine St, Beverly, MA 01915, USA", + "location_name": "Beverly Public Library - Farms Branch", + "location_address": "24 Vine St", + "location_city": "Beverly", + "location_zip": "01915", + "description": "

https://www.facebook.com/events/1014244079607945/, register items at https://bit.ly/itemcheckin, register to Fixit Coach at http://bit.ly/inpersoncoachsignup

", + "start": "2023-10-21T15:00:00+00:00", + "end": "2023-10-21T18:00:00+00:00" + }, + { + "uid": "5pdbmuvtn5uq8lld2f7p8dn41b@google.com", + "summary": "USA-MA-Boston Hyde Park Branch Library Boston Public Library", + "location": "35 Harvard Ave, Hyde Park, MA 02136, USA", + "location_name": "", + "location_address": "35 Harvard Ave", + "location_city": "Hyde Park", + "location_zip": "02136", + "description": "https://bpl.bibliocommons.com/events/64cbac30fa7afd29002413cd", + "start": "2023-11-04T14:00:00+00:00", + "end": "2023-11-04T17:00:00+00:00" + }, + { + "uid": "4jb4nrutgsog15o7dh6guh7hc1@google.com", + "summary": "USA-MA-Ashland Ashland Library", + "location": "", + "location_name": "", + "location_address": "", + "location_city": "", + "location_zip": "", + "description": "https://www.facebook.com/events/655976076626348/", + "start": "2023-11-04T17:00:00+00:00", + "end": "2023-11-04T19:00:00+00:00" + }, + { + "uid": "0bvqj2ll1b8j6biqhopq22064g@google.com", + "summary": "USA-MA-Boston Uphams Corner Branch Library", + "location": "500 Columbia Rd, Dorchester, MA 02125, USA", + "location_name": "", + "location_address": "500 Columbia Rd", + "location_city": "Dorchester", + "location_zip": "02125", + "description": "(check library)", + "start": "2023-11-18T15:00:00+00:00", + "end": "2023-11-18T18:00:00+00:00" + }, + { + "uid": "4bocarl85qakkpjro0lau0ukk6@google.com", + "summary": "USA-MA-Arlington Robbins Library", + "location": "700 Massachusetts Ave, Arlington, MA 02476, USA", + "location_name": "", + "location_address": "700 Massachusetts Ave", + "location_city": "Arlington", + "location_zip": "02476", + "description": "https://www.facebook.com/events/309697601682942/", + "start": "2023-11-18T19:30:00+00:00", + "end": "2023-11-18T21:30:00+00:00" + }, + { + "uid": "3ha55jdk2asscblssuao3t0q5s@google.com", + "summary": "USA-MA-Acton", + "location": "486 Main St, Acton, MA 01720, USA", + "location_name": "", + "location_address": "486 Main St", + "location_city": "Acton", + "location_zip": "01720", + "description": "https://www.facebook.com/events/693295046155179/", + "start": "2023-11-25T15:00:00+00:00", + "end": "2023-11-25T18:00:00+00:00" + }, + { + "uid": "7e5akbi4dcu9g75e3rf4e655pj@google.com", + "summary": "USA-MA-Acton Acton Memorial Library", + "location": "Acton Memorial Library, 486 Main St, Acton, MA 01720, USA", + "location_name": "Acton Memorial Library", + "location_address": "486 Main St", + "location_city": "Acton", + "location_zip": "01720", + "description": "https://www.facebook.com/events/253398540956815
Register items at https://bit.ly/itemcheckin
Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2024-02-24T15:00:00+00:00", + "end": "2024-02-24T18:00:00+00:00" + }, + { + "uid": "560g3mk8atrck509ao9msu34kn@google.com", + "summary": "USA-MA-Arlington Robbins Library", + "location": "700 Massachusetts Ave, Arlington, MA 02476, USA", + "location_name": "", + "location_address": "700 Massachusetts Ave", + "location_city": "Arlington", + "location_zip": "02476", + "description": "https://www.facebook.com/events/903948688106166
Register items at https://bit.ly/itemcheckin
Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2024-03-09T19:30:00+00:00", + "end": "2024-03-09T21:30:00+00:00" + }, + { + "uid": "2kdq5ear6v4v8aqslq3q4eovj2@google.com", + "summary": "USA-MA-Medford Medford Library 1PM EDT", + "location": "Charlotte and William Bloomberg Medford Public Library, 111 High St, Medford, MA 02155, USA", + "location_name": "Charlotte and William Bloomberg Medford Public Library", + "location_address": "111 High St", + "location_city": "Medford", + "location_zip": "02155", + "description": "https://www.facebook.com/events/315921030818589/
- Check-in form: https://bit.ly/itemcheckin
- Fixit Coach Sign-up form: http://bit.ly/inpersoncoachsignup", + "start": "2024-03-23", + "end": "2024-03-24" + }, + { + "uid": "6gqho1tvpapi7eqja3qqn5ni6f@google.com", + "summary": "USA-MA-Boston Jamaica Plain Library 1PM EDT", + "location": "Jamaica Plain Branch of the Boston Public Library, 30 South St, Jamaica Plain, MA 02130, USA", + "location_name": "Jamaica Plain Branch of the Boston Public Library", + "location_address": "30 South St", + "location_city": "Jamaica Plain", + "location_zip": "02130", + "description": "

https://www.facebook.com/events/1136990463989121/

-In-Person Fixit Clinic Check-in form: https://bit.ly/itemcheckin

-In-Person Fixit Clinic Coach Sign-up form: http://bit.ly/inpersoncoachsignup

", + "start": "2024-04-06", + "end": "2024-04-07" + }, + { + "uid": "2cppq73qs62muufi0v9hhk24t9@google.com", + "summary": "USA-MA-Cambridge Cambridge Public Library 2PM EDT", + "location": "Cambridge Public Library, 449 Broadway, Cambridge, MA 02138, USA", + "location_name": "Cambridge Public Library", + "location_address": "449 Broadway", + "location_city": "Cambridge", + "location_zip": "02138", + "description": "https://www.facebook.com/events/937230804328104/
-In-Person Fixit Clinic Check-in form: https://bit.ly/itemcheckin
-In-Person Fixit Clinic Coach Sign-up form: http://bit.ly/inpersoncoachsignup", + "start": "2024-04-13", + "end": "2024-04-14" + }, + { + "uid": "6gimu7ifbdkas4bducl4l23kfd@google.com", + "summary": "USA-MA-Maynard Maynard Public Library 1PM EDT", + "location": "Maynard Public Library, 77 Nason St, Maynard, MA 01754, USA", + "location_name": "Maynard Public Library", + "location_address": "77 Nason St", + "location_city": "Maynard", + "location_zip": "01754", + "description": "https://maynardpubliclibrary.assabetinteractive.com/calendar/maynard-fix-it-clinic-2/
https://www.facebook.com/events/728408855621181/
Register items at https://bit.ly/itemcheckin
Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2024-04-20", + "end": "2024-04-21" + }, + { + "uid": "2q5i077i0m0orqjso51g4947t9@google.com", + "summary": "USA-MA-Beverly Beverly Public Library Noon EDT", + "location": "Beverly Public Library, 32 Essex St, Beverly, MA 01915, USA", + "location_name": "Beverly Public Library", + "location_address": "32 Essex St", + "location_city": "Beverly", + "location_zip": "01915", + "description": "

https://beverlypubliclibrary.assabetinteractive.com/calendar/fix-it-clinic/
https://www.facebook.com/events/1122029325493349/
Register items at https://bit.ly/itemcheckin
Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup

", + "start": "2024-04-20", + "end": "2024-04-21" + }, + { + "uid": "6g9lck9tc8sdiq8cuiaba2rqta@google.com", + "summary": "USA-MA-Brookline", + "location": "", + "location_name": "", + "location_address": "", + "location_city": "", + "location_zip": "", + "description": "", + "start": "2024-05-04", + "end": "2024-05-05" + }, + { + "uid": "1i4tio4csor2rg72ra9kl5com1@google.com", + "summary": "USA-MA-Arlington Robbins Library 2:30PM EDT", + "location": "Robbins Library, 700 Massachusetts Ave, Arlington, MA 02476, USA", + "location_name": "Robbins Library", + "location_address": "700 Massachusetts Ave", + "location_city": "Arlington", + "location_zip": "02476", + "description": "https://www.facebook.com/events/7109292189136646
- Check-in form: https://bit.ly/itemcheckin
- Fixit Coach Sign-up form: http://bit.ly/inpersoncoachsignup", + "start": "2024-05-11", + "end": "2024-05-12" + }, + { + "uid": "1siuds1qv9uroj5ffisgble2e3@google.com", + "summary": "USA-MA-Arlington Robbins Library", + "location": "700 Massachusetts Ave, Arlington, MA 02476, USA", + "location_name": "", + "location_address": "700 Massachusetts Ave", + "location_city": "Arlington", + "location_zip": "02476", + "description": "ALWAYS CONTACT THE LIBRARY/VENUE TO CONFIRM DAY/TIME
https://www.facebook.com/events/7109292189136646
Register items at https://bit.ly/itemcheckin
Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2024-05-11T18:30:00+00:00", + "end": "2024-05-11T20:30:00+00:00" + }, + { + "uid": "7hmrabmqncu89ii1m0tsr7cu8t@google.com", + "summary": "USA-MA-Acton Acton Library 10AM EDT", + "location": "Acton Memorial Library, 486 Main St, Acton, MA 01720, USA", + "location_name": "Acton Memorial Library", + "location_address": "486 Main St", + "location_city": "Acton", + "location_zip": "01720", + "description": "ALWAYS CONTACT THE LIBRARY TO CONFIRM DAY/TIME
https://www.facebook.com/events/401421329460634
Item Check-in form: https://bit.ly/itemcheckin
Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2024-05-18", + "end": "2024-05-19" + }, + { + "uid": "00ibfjgahnvjkhme7vfoai0rcu@google.com", + "summary": "USA-MA-Ashland 1PM EDT", + "location": "Ashland Public Library, 66 Front St, Ashland, MA 01721, USA", + "location_name": "Ashland Public Library", + "location_address": "66 Front St", + "location_city": "Ashland", + "location_zip": "01721", + "description": "ALWAYS CONTACT THE LIBRARY TO CONFIRM DAY/TIME
https://www.ashlandmass.com/Calendar.aspx?EID=13242
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2024-06-01", + "end": "2024-06-02" + }, + { + "uid": "4ngr3nso85d9j124a51jjna8oq@google.com", + "summary": "USA-MA-Dorchester Fields Corner Library 1PM EDT", + "location": "Fields Corner Branch Boston Public Library, 1520 Dorchester Ave, Dorchester, MA 02122, USA", + "location_name": "Fields Corner Branch Boston Public Library", + "location_address": "1520 Dorchester Ave", + "location_city": "Dorchester", + "location_zip": "02122", + "description": "ALWAYS RECONFIRM DAY/TIME WITH THE LIBRARY/VENUE
https://bpl.bibliocommons.com/events/664b852b05ea9f2800703bc9
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2024-06-15", + "end": "2024-06-16" + }, + { + "uid": "5vti3lrl1rlfregfpnhp7u31uj@google.com", + "summary": "USA-MA-Boston Connolly Branch Library 1PM", + "location": "Connolly Branch of the Boston Public Library, 433 Centre St, Jamaica Plain, MA 02130, USA", + "location_name": "Connolly Branch of the Boston Public Library", + "location_address": "433 Centre St", + "location_city": "Jamaica Plain", + "location_zip": "02130", + "description": "ALWAYS RECONFIRM DAY/TIME WITH THE LIBRARY\nhttps://bpl.bibliocommons.com/events/667f02ed1be1968097d8904b\n-Register items at https://bit.ly/itemcheckin\n-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2024-07-20", + "end": "2024-07-21" + }, + { + "uid": "1vdlqv11ks5jt35t5t49fn2j04@google.com", + "summary": "USA-MA-Brookline Public Library of Brookline 1PM EDT", + "location": "The Public Library of Brookline -- Brookline Village Library, 361 Washington St, Brookline, MA 02445, USA", + "location_name": "The Public Library of Brookline -- Brookline Village Library", + "location_address": "361 Washington St", + "location_city": "Brookline", + "location_zip": "02445", + "description": "ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY/VENUE
https://www.brooklinelibrary.org/events/event/fixit-clinic-2/
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2024-08-03", + "end": "2024-08-04" + }, + { + "uid": "13h86nkbl20ip2loks5jmueiop@google.com", + "summary": "USA-MA-Acton Memorial Library 10AM", + "location": "Acton Memorial Library, 486 Main St, Acton, MA 01720, USA", + "location_name": "Acton Memorial Library", + "location_address": "486 Main St", + "location_city": "Acton", + "location_zip": "01720", + "description": "USA-MA-Acton Memorial Library 10AM EDT
ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY
https://www.actonmemoriallibrary.org/calendar/
https://actonmemoriallibrary.assabetinteractive.com/calendar/fix-it-clinic-7/
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2024-09-14", + "end": "2024-09-15" + }, + { + "uid": "5c3tkepc599flt01d5pb2540to@google.com", + "summary": "USA-MA-Medford Public Library and Mystic Makerspace 1PM", + "location": "Charlotte and William Bloomberg Medford Public Library, 111 High St, Medford, MA 02155, USA", + "location_name": "Charlotte and William Bloomberg Medford Public Library", + "location_address": "111 High St", + "location_city": "Medford", + "location_zip": "02155", + "description": "ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY\nhttps://medfordlibrary.org/event/mystic-makerspace-fixit-clinic-5/\nhttps://www.facebook.com/events/432653226437019/\n-Register items at https://bit.ly/itemcheckin\n-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2024-10-05", + "end": "2024-10-06" + }, + { + "uid": "11jh92qg4uk9a5vletkvhao8t5@google.com", + "summary": "USA-MA-Boston Fenway Community Center 11AM", + "location": "Fenway Community Center, 1282 Boylston St #123, Boston, MA 02215, USA", + "location_name": "Fenway Community Center", + "location_address": "1282 Boylston St #123", + "location_city": "Boston", + "location_zip": "02215", + "description": "https://fenwaycommunitycenter.org/calendar/month/2024-10/
https://fenwaycommunitycenter.org/
ALWAYS RECONFIRM DAY/TIME WITH THE VENUE
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2024-10-05", + "end": "2024-10-06" + }, + { + "uid": "56kpu232cen8o234e9i0h5cp4t@google.com", + "summary": "USA-MA-Canton Canton Public Library 10AM", + "location": "Canton Public Library, 786 Washington St, Canton, MA 02021, USA", + "location_name": "Canton Public Library", + "location_address": "786 Washington St", + "location_city": "Canton", + "location_zip": "02021", + "description": "https://canton.assabetinteractive.com/calendar/reserved-for-library-program-30
ALWAYS RECONFIRM DAY/TIME WITH THE LIBRARY
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2024-10-19", + "end": "2024-10-20" + }, + { + "uid": "198p8k5vbvdkuqdtpn8b64dm22@google.com", + "summary": "USA-MA-Boston Boston Building Resources 11AM-2PM EDT", + "location": "Boston Building Resources, 100 Terrace St, Boston, MA 02120, USA", + "location_name": "Boston Building Resources", + "location_address": "100 Terrace St", + "location_city": "Boston", + "location_zip": "02120", + "description": "USA-MA-Boston Boston Building Resources, 11AM-2PM
https://www.bostonbuildingresources.com/calendar/national-reuse-day
ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE VENUE
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2024-10-19", + "end": "2024-10-20" + }, + { + "uid": "3lbmj5q8v8k8gaqa19bkhaep3m@google.com", + "summary": "USA-MA-Arlington Robbins Memorial Library 2:30PM", + "location": "Robbins Library, 700 Massachusetts Ave, Arlington, MA 02476, USA", + "location_name": "Robbins Library", + "location_address": "700 Massachusetts Ave", + "location_city": "Arlington", + "location_zip": "02476", + "description": "ttps://www.robbinslibrary.org/
ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2024-11-02", + "end": "2024-11-03" + }, + { + "uid": "09o04gnjo5etuaic9rbj83v6ug@google.com", + "summary": "USA-MA-Boston Hyde Park Branch Library 10AM", + "location": "Hyde Park Branch of the Boston Public Library, 35 Harvard Ave, Hyde Park, MA 02136, USA", + "location_name": "Hyde Park Branch of the Boston Public Library", + "location_address": "35 Harvard Ave", + "location_city": "Hyde Park", + "location_zip": "02136", + "description": "https://bpl.bibliocommons.com/v2/events?locations=27
https://www.bpl.org/locations/hyde-park/
ALWAYS RECONFIRM DAY/TIME WITH THE LIBRARY
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2024-11-02", + "end": "2024-11-03" + }, + { + "uid": "3uk6l18l68fkhi1e4onqpi8l9g@google.com", + "summary": "USA-MA-Ashland Ashland Library 1PM-3PM", + "location": "Ashland Public Library, 66 Front St, Ashland, MA 01721, USA", + "location_name": "Ashland Public Library", + "location_address": "66 Front St", + "location_city": "Ashland", + "location_zip": "01721", + "description": "ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY\nhttps://www.ashlandmass.com/Calendar.aspx?EID=13243&month=11&year=2024&day=2&calType=0\n-Register items at https://bit.ly/itemcheckin\n-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2024-11-02", + "end": "2024-11-03" + }, + { + "uid": "1aro0dmua6cipnajf0741esh3c@google.com", + "summary": "USA-MA-Belmont Belmont Public Library at the Beech Street Center 11AM", + "location": "Beech Street Center, 266 Beech St, Belmont, MA 02478, USA", + "location_name": "Beech Street Center", + "location_address": "266 Beech St", + "location_city": "Belmont", + "location_zip": "02478", + "description": "ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY
https://belmontpubliclibrary.assabetinteractive.com/calendar/fixit-clinic/
https://www.facebook.com/events/523812016720056/
https://belmontpubliclibrary.net/events/
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2024-11-16", + "end": "2024-11-17" + }, + { + "uid": "2kfe69btap65vj5d5e7iq9d5of@google.com", + "summary": "USA-MA-Acton Memorial Library 10AM", + "location": "Acton Memorial Library, 486 Main St, Acton, MA 01720, USA", + "location_name": "Acton Memorial Library", + "location_address": "486 Main St", + "location_city": "Acton", + "location_zip": "01720", + "description": "USA-MA-Acton Memorial Library 10AM EDT
ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY
https://www.actonmemoriallibrary.org/calendar/
https://actonmemoriallibrary.assabetinteractive.com/calendar/fix-it-clinic-8/
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2025-01-11", + "end": "2025-01-12" + }, + { + "uid": "1c61ffla88css65i6bcaan2q9k@google.com", + "summary": "USA-MA-Cambridge MIT Metropolis Makerspace (Building 6 Basement)", + "location": "MIT Cambridge MA 02139", + "location_name": "MIT Cambridge MA 02139", + "location_address": "", + "location_city": "", + "location_zip": "", + "description": "ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE VENUE
https://calendar.mit.edu/event/fixit-clinic
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2025-01-23", + "end": "2025-01-24" + }, + { + "uid": "0qu31r0d15asfivd7cmlpt9ti9@google.com", + "summary": "USA-MA-Arlington Robbins Memorial Library 2:30PM", + "location": "Robbins Library, 700 Massachusetts Ave, Arlington, MA 02476, USA", + "location_name": "Robbins Library", + "location_address": "700 Massachusetts Ave", + "location_city": "Arlington", + "location_zip": "02476", + "description": "https://www.robbinslibrary.org/library-events/
ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2025-02-01", + "end": "2025-02-02" + }, + { + "uid": "7m65i9ab4lk1a0guoaea96h4ai@google.com", + "summary": "USA-MA-Chelmsford Public Library", + "location": "Chelmsford Public Library, 25 Boston Rd, Chelmsford, MA 01824, USA", + "location_name": "Chelmsford Public Library", + "location_address": "25 Boston Rd", + "location_city": "Chelmsford", + "location_zip": "01824", + "description": "ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE VENUE
https://chelmsfordlibrary.libcal.com/event/13225851
Register and volunteer through the library calendar event.", + "start": "2025-02-02", + "end": "2025-02-03" + }, + { + "uid": "4atcs5utu60pq8g2g6k9btel2e@google.com", + "summary": "USA-MA-Boston Boston Building Resources 10AM-1PM EDT", + "location": "Boston Building Resources, 100 Terrace St, Boston, MA 02120, USA", + "location_name": "Boston Building Resources", + "location_address": "100 Terrace St", + "location_city": "Boston", + "location_zip": "02120", + "description": "USA-MA-Boston Boston Building Resources 10AM-1PM EDT\nhttps://www.facebook.com/events/2340354946343367/\nALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE VENUE\n-Register items at https://bit.ly/itemcheckin\n-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2025-02-08", + "end": "2025-02-09" + }, + { + "uid": "2tqfg7k5ft6esiorod6v4qd7fc@google.com", + "summary": "USA-MA-Cambridge Cabot Science Library Noon-3pm", + "location": "Cabot Science Library, 1 Oxford St, Cambridge, MA 02138, USA", + "location_name": "Cabot Science Library", + "location_address": "1 Oxford St", + "location_city": "Cambridge", + "location_zip": "02138", + "description": "\u200b\u200b2025-02-13 USA-MA-Cambridge Cabot Science Library noon-3PM EDT
https://sustainable.harvard.edu/event/fixit-clinic-is-back/
https://harvardartmuseums.org/calendar/fixit-clinic-off-site
ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY/VENUE
https://sustainable.harvard.edu/event/fixit-clinic-is-back/
Linkedin: https://www.linkedin.com/events/7274613639536369664/
Facebook: https://www.facebook.com/events/1514135686034807/
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2025-02-13", + "end": "2025-02-14" + }, + { + "uid": "3m449s66asuo69bn8v5rdb6c9c@google.com", + "summary": "USA-MA-Arlington Robbins Memorial Library 2:30PM", + "location": "Robbins Library, 700 Massachusetts Ave, Arlington, MA 02476, USA", + "location_name": "Robbins Library", + "location_address": "700 Massachusetts Ave", + "location_city": "Arlington", + "location_zip": "02476", + "description": "ttps://www.robbinslibrary.org/
ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2025-03-08", + "end": "2025-03-09" + }, + { + "uid": "4496f85l6dmpk2162g2intl7kf@google.com", + "summary": "USA-MA-Cambridge MIT Metropolis Makerspace (Building 6 Basement)", + "location": "MIT Cambridge MA 02139", + "location_name": "MIT Cambridge MA 02139", + "location_address": "", + "location_city": "", + "location_zip": "", + "description": "USA-MA-MIT Metropolis Makerspace 6PM \nALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE VENUE\nhttps://calendar.mit.edu/event/fixit-clinic\n-Register items at https://bit.ly/itemcheckin\n-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2025-04-03", + "end": "2025-04-04" + }, + { + "uid": "3jrrqkjpr8gdisoc0cusr136g5@google.com", + "summary": "USA-MA-Cambridge Cambridge Public Library 11-2", + "location": "Cambridge Public Library, 449 Broadway, Cambridge, MA 02138, USA", + "location_name": "Cambridge Public Library", + "location_address": "449 Broadway", + "location_city": "Cambridge", + "location_zip": "02138", + "description": "USA-MA-Cambridge Cambridge Public Library 11AM
https://cambridgepl.libcal.com/event/14263183
ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2025-04-19", + "end": "2025-04-20" + }, + { + "uid": "3j58aj0gu3kthbrje82agcr35n@google.com", + "summary": "USA-MA-Walpole Walpole Public Library 4-7PM", + "location": "Walpole Public Library, 143 School St, Walpole, MA 02081, USA", + "location_name": "Walpole Public Library", + "location_address": "143 School St", + "location_city": "Walpole", + "location_zip": "02081", + "description": "USA-MA-Walpole Walpole Public Library 4PM\nALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY\n-Register items at https://bit.ly/itemcheckin\n-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2025-04-22", + "end": "2025-04-23" + }, + { + "uid": "241ask2rnteq99k2e3pitjqoho@google.com", + "summary": "USA-MA-Arlington Robbins Memorial Library 2:30PM", + "location": "Robbins Library, 700 Massachusetts Ave, Arlington, MA 02476, USA", + "location_name": "Robbins Library", + "location_address": "700 Massachusetts Ave", + "location_city": "Arlington", + "location_zip": "02476", + "description": "ttps://www.robbinslibrary.org/
ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2025-05-03", + "end": "2025-05-04" + }, + { + "uid": "1tdaf7lh8vcba0im2gih32ffat@google.com", + "summary": "USA-MA-Medford Mystic Makerspace 1PM", + "location": "Charlotte and William Bloomberg Medford Public Library, 111 High St, Medford, MA 02155, USA", + "location_name": "Charlotte and William Bloomberg Medford Public Library", + "location_address": "111 High St", + "location_city": "Medford", + "location_zip": "02155", + "description": "USA-MA-Medford Mystic Makerspace 1PM
https://medfordlibrary.assabetinteractive.com/calendar/mystic-makerspace-fix-it-clinic/
ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE HOST
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2025-05-10", + "end": "2025-05-11" + }, + { + "uid": "2rlaki4pqk86umi8h99kfafajm@google.com", + "summary": "USA-MA-Shrewsbury Shrewsbury Public Library", + "location": "Shrewsbury Public Library, 609 Main St, Shrewsbury, MA 01545, USA", + "location_name": "Shrewsbury Public Library", + "location_address": "609 Main St", + "location_city": "Shrewsbury", + "location_zip": "01545", + "description": "USA-MA-Shrewsbury Shrewsbury Public Library 11AM
https://shrewsburypubliclibrary.org/about/calendar/
ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2025-05-17", + "end": "2025-05-18" + }, + { + "uid": "1lp8rrulo3lmeeq2aret5jcfee@google.com", + "summary": "USA-MA-Boston Boston Building Resources 11AM-2PM EST", + "location": "Boston Building Resources, 100 Terrace St, Boston, MA 02120, USA", + "location_name": "Boston Building Resources", + "location_address": "100 Terrace St", + "location_city": "Boston", + "location_zip": "02120", + "description": "USA-MA-Boston Boston Building Resources 11AM-2PM EDT\nALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE VENUE\n-Register items at https://bit.ly/itemcheckin\n-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2025-05-17", + "end": "2025-05-18" + }, + { + "uid": "0giv0gl84eocp0iqricutnsbm9@google.com", + "summary": "USA-MA-Acton Memorial Library 10AM", + "location": "Acton Memorial Library, 486 Main St, Acton, MA 01720, USA", + "location_name": "Acton Memorial Library", + "location_address": "486 Main St", + "location_city": "Acton", + "location_zip": "01720", + "description": "USA-MA-Acton Memorial Library 10AM EDT
ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY
https://www.actonmemoriallibrary.org/calendar/
https://actonmemoriallibrary.assabetinteractive.com/calendar/fix-it-clinic-9/
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2025-05-24", + "end": "2025-05-25" + }, + { + "uid": "0ha144d3idvb3a7s2k7gkh7c1m@google.com", + "summary": "USA-MA-Beverly Beverly Main Branch Library Noon", + "location": "Beverly Public Library, 32 Essex St, Beverly, MA 01915, USA", + "location_name": "Beverly Public Library", + "location_address": "32 Essex St", + "location_city": "Beverly", + "location_zip": "01915", + "description": "ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY/VENUE
https://beverlypubliclibrary.org/events/
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2025-06-07", + "end": "2025-06-08" + }, + { + "uid": "36cirer9ssubkt2fcvrg0flc90@google.com", + "summary": "USA-MA-Ashland Ashland Library 1PM", + "location": "Ashland Public Library, 66 Front St, Ashland, MA 01721, USA", + "location_name": "Ashland Public Library", + "location_address": "66 Front St", + "location_city": "Ashland", + "location_zip": "01721", + "description": "USA-MA-Ashland Ashland Library 1PM
ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY/VENUE
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2025-06-07", + "end": "2025-06-08" + }, + { + "uid": "1ivqlqdad7dp3csbhpkpnhqpbn@google.com", + "summary": "USA-MA-Chelmsford Public Library 6PM", + "location": "Chelmsford Public Library, 25 Boston Rd, Chelmsford, MA 01824, USA", + "location_name": "Chelmsford Public Library", + "location_address": "25 Boston Rd", + "location_city": "Chelmsford", + "location_zip": "01824", + "description": "ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE VENUE
https://chelmsfordlibrary.libcal.com/event/14822633\u00a0
Register and volunteer through the library calendar event.", + "start": "2025-07-24", + "end": "2025-07-25" + }, + { + "uid": "1rn2qimpq5gs5p2nchn123rqf2@google.com", + "summary": "USA-MA-Boston Artisans Asylum 6:30PM", + "location": "Artisans Asylum, 96 Holton St, Boston, MA 02135, USA", + "location_name": "Artisans Asylum", + "location_address": "96 Holton St", + "location_city": "Boston", + "location_zip": "02135", + "description": "ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE VENUE\nJoin us for the first Fixit Clinic at A2! Thursday evening, 6:30-9:30pm. Meet A2 members, learn about membership and other programming at A2, check out projects in progress, and tour our amazing space.\n-Register items at https://bit.ly/itemcheckin\n-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2025-08-28", + "end": "2025-08-29" + }, + { + "uid": "1cin4idpc57o1i6hqhrl7edtga@google.com", + "summary": "USA-MA-Acton Memorial Library 10AM", + "location": "Acton Memorial Library, 486 Main St, Acton, MA 01720, USA", + "location_name": "Acton Memorial Library", + "location_address": "486 Main St", + "location_city": "Acton", + "location_zip": "01720", + "description": "USA-MA-Acton Memorial Library 10AM EDT
ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY
https://www.actonmemoriallibrary.org/calendar/
https://actonmemoriallibrary.assabetinteractive.com/calendar/fix-it-clinic-10/
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2025-09-13", + "end": "2025-09-14" + }, + { + "uid": "656ioq566i0rki68f8sncvtdvh@google.com", + "summary": "USA-MA-Cambridge Cabot Science Library 12PM", + "location": "Cabot Science Library, 1 Oxford St, Cambridge, MA 02138, USA", + "location_name": "Cabot Science Library", + "location_address": "1 Oxford St", + "location_city": "Cambridge", + "location_zip": "02138", + "description": "\u200b\u200b2025-10-01 USA-MA-Cambridge Cabot Science Library 12-3pm
https://sustainable.harvard.edu/event/fixit-clinic/
ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY/VENUE
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2025-10-01", + "end": "2025-10-02" + }, + { + "uid": "13v12ahv4f8gcjl0el8ht40m8t@google.com", + "summary": "USA-MA-Boston Boston Building Resources 11AM-2PM EST", + "location": "Boston Building Resources, 100 Terrace St, Boston, MA 02120, USA", + "location_name": "Boston Building Resources", + "location_address": "100 Terrace St", + "location_city": "Boston", + "location_zip": "02120", + "description": "USA-MA-Boston Boston Building Resources 11AM-2PM EDT\nALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE VENUE\n-Register items at https://bit.ly/itemcheckin\n-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2025-10-04", + "end": "2025-10-05" + }, + { + "uid": "6vt7i9stio5tt9foh82hr8h6q1@google.com", + "summary": "USA-MA-Framingham Repair Cafe 2PM-5PM EST", + "location": "First Parish in Framingham Unitarian Universalist, 24 Vernon St, Framingham, MA 01701, USA", + "location_name": "First Parish in Framingham Unitarian Universalist", + "location_address": "24 Vernon St", + "location_city": "Framingham", + "location_zip": "01701", + "description": "USA-MA-Framingham Repair Cafe 2PM-5PM EDT\nALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE VENUE\n-Volunteer at tinyurl.com/FramFixVolunteer", + "start": "2025-10-05", + "end": "2025-10-06" + }, + { + "uid": "62uk5qp1dosvhrl9om764ps63u@google.com", + "summary": "USA-MA-Medford Mystic Makerspace 1PM", + "location": "Charlotte and William Bloomberg Medford Public Library, 111 High St, Medford, MA 02155, USA", + "location_name": "Charlotte and William Bloomberg Medford Public Library", + "location_address": "111 High St", + "location_city": "Medford", + "location_zip": "02155", + "description": "USA-MA-Medford Mystic Makerspace 1PM
https://medfordlibrary.assabetinteractive.com/calendar/hold-for-mystic-makerspace-4/
ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE HOST
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2025-10-18", + "end": "2025-10-19" + }, + { + "uid": "5v4t4a7ljgs4s2rfu7jrelfflh@google.com", + "summary": "USA-MA-Boston Hyde Park Branch Library 10AM", + "location": "Hyde Park Branch of the Boston Public Library, 35 Harvard Ave, Hyde Park, MA 02136, USA", + "location_name": "Hyde Park Branch of the Boston Public Library", + "location_address": "35 Harvard Ave", + "location_city": "Hyde Park", + "location_zip": "02136", + "description": "https://bpl.bibliocommons.com/v2/events?locations=27\nhttps://www.bpl.org/locations/hyde-park/\nALWAYS RECONFIRM DAY/TIME WITH THE LIBRARY\n-Register items at https://bit.ly/itemcheckin\n-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2025-10-18", + "end": "2025-10-19" + }, + { + "uid": "0pd64plocc7j7q28buoqgoj8a1@google.com", + "summary": "USA-MA-Shrewsbury Shrewsbury Public Library 11AM", + "location": "Shrewsbury Public Library, 609 Main St, Shrewsbury, MA 01545, USA", + "location_name": "Shrewsbury Public Library", + "location_address": "609 Main St", + "location_city": "Shrewsbury", + "location_zip": "01545", + "description": "USA-MA-Shrewsbury Shrewsbury Public Library 11AM\u00a0
https://shrewsburyma.assabetinteractive.com/calendar/fix-it-clinic-2/\u00a0
ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2025-10-18", + "end": "2025-10-19" + }, + { + "uid": "276i5a4j7btnidic511h6i8njl@google.com", + "summary": "USA-MA-Chelmsford Public Library 1:30PM", + "location": "Chelmsford Public Library, 25 Boston Rd, Chelmsford, MA 01824, USA", + "location_name": "Chelmsford Public Library", + "location_address": "25 Boston Rd", + "location_city": "Chelmsford", + "location_zip": "01824", + "description": "ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE VENUE
https://chelmsfordlibrary.libcal.com/event/15075866\u00a0
Register and volunteer through the library calendar event.", + "start": "2025-10-19", + "end": "2025-10-20" + }, + { + "uid": "0gtpnpm3ceqboqnapnutt5n7hn@google.com", + "summary": "USA-MA-Belmont Belmont Public Library at the Beech Street Center 1PM", + "location": "Beech Street Center, 266 Beech St, Belmont, MA 02478, USA", + "location_name": "Beech Street Center", + "location_address": "266 Beech St", + "location_city": "Belmont", + "location_zip": "02478", + "description": "ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY\nhttps://belmontpubliclibrary.net/events/\n-Register items at https://bit.ly/itemcheckin\n-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2025-10-25", + "end": "2025-10-26" + }, + { + "uid": "3g4g21qksq2cm8j6ncjc41pk3a@google.com", + "summary": "USA-MA-Ashland Ashland Library 1PM", + "location": "Ashland Public Library, 66 Front St, Ashland, MA 01721, USA", + "location_name": "Ashland Public Library", + "location_address": "66 Front St", + "location_city": "Ashland", + "location_zip": "01721", + "description": "USA-MA-Ashland Ashland Library 1PM
ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY/VENUE
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2025-11-01", + "end": "2025-11-02" + }, + { + "uid": "4vdku75ne8tjllavgql6ueis9g@google.com", + "summary": "USA-MA-Arlington Robbins Memorial Library 2:30PM", + "location": "Robbins Library, 700 Massachusetts Ave, Arlington, MA 02476, USA", + "location_name": "Robbins Library", + "location_address": "700 Massachusetts Ave", + "location_city": "Arlington", + "location_zip": "02476", + "description": "ttps://www.robbinslibrary.org/
ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2025-11-15", + "end": "2025-11-16" + }, + { + "uid": "5acchlmk5pak6km7dgevpno3o5@google.com", + "summary": "USA-MA-Chelmsford Public Library 1:30PM", + "location": "Chelmsford Public Library, 25 Boston Rd, Chelmsford, MA 01824, USA", + "location_name": "Chelmsford Public Library", + "location_address": "25 Boston Rd", + "location_city": "Chelmsford", + "location_zip": "01824", + "description": "ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE VENUE
https://chelmsfordlibrary.libcal.com/event/15094292
Register and volunteer through the library calendar event.", + "start": "2025-12-07", + "end": "2025-12-08" + }, + { + "uid": "20kjg5jrcrbe7cq9h9hhtliedn@google.com", + "summary": "USA-MA-Acton Memorial Library 10AM", + "location": "Acton Memorial Library, 486 Main St, Acton, MA 01720, USA", + "location_name": "Acton Memorial Library", + "location_address": "486 Main St", + "location_city": "Acton", + "location_zip": "01720", + "description": "USA-MA-Acton Memorial Library 10AM EDT
ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY
https://www.actonmemoriallibrary.org/calendar/
https://actonmemoriallibrary.assabetinteractive.com/calendar/fix-it-clinic-11
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2025-12-13", + "end": "2025-12-14" + }, + { + "uid": "7fdd3r59q0tnkij2a2qtm77vj3@google.com", + "summary": "USA-MA-East Boston Maverick Landing Community Services 10AM-1PM", + "location": "Maverick Landing Community Services (MLCS), 31 Liverpool St, East Boston, MA 02128, USA", + "location_name": "Maverick Landing Community Services (MLCS)", + "location_address": "31 Liverpool St", + "location_city": "East Boston", + "location_zip": "02128", + "description": "https://www.boston.gov/calendar/fixit-clinic-maverick-landing-community-services
\u00a0
ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup
", + "start": "2026-01-17", + "end": "2026-01-18" + }, + { + "uid": "1cqkgf72931ebnbpnk540bdh18@google.com", + "summary": "USA-MA-Mattapan Branch Library 2-4PM", + "location": "Mattapan Branch of the Boston Public Library, 1350 Blue Hill Ave, Mattapan, MA 02126, USA", + "location_name": "Mattapan Branch of the Boston Public Library", + "location_address": "1350 Blue Hill Ave", + "location_city": "Mattapan", + "location_zip": "02126", + "description": "https://www.boston.gov/calendar/fixit-clinic-junior-mattapan\u00a0

ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup
", + "start": "2026-01-31", + "end": "2026-02-01" + }, + { + "uid": "09ivs663o353bqpi5fu3h6sobh@google.com", + "summary": "USA-MA-Chelmsford Public Library 1:30PM", + "location": "Chelmsford Public Library, 25 Boston Rd, Chelmsford, MA 01824, USA", + "location_name": "Chelmsford Public Library", + "location_address": "25 Boston Rd", + "location_city": "Chelmsford", + "location_zip": "01824", + "description": "ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE VENUE
https://chelmsfordlibrary.libcal.com/event/15094305\u00a0
Register and volunteer through the library calendar event.", + "start": "2026-02-01", + "end": "2026-02-02" + }, + { + "uid": "1oa1kqt6mju8vmounmrjckv4h3@google.com", + "summary": "USA-MA-Arlington Robbins Memorial Library 2:30PM", + "location": "Robbins Library, 700 Massachusetts Ave, Arlington, MA 02476, USA", + "location_name": "Robbins Library", + "location_address": "700 Massachusetts Ave", + "location_city": "Arlington", + "location_zip": "02476", + "description": "ttps://www.robbinslibrary.org/
ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2026-02-07", + "end": "2026-02-08" + }, + { + "uid": "59bebeq0cp3ujea4se8khenkk0@google.com", + "summary": "USA-MA-Wellfleet Wellfleet Public Library 1PM", + "location": "Wellfleet Public Library, 55 W. Main Street, Wellfleet, MA", + "location_name": "Wellfleet Public Library", + "location_address": "55 W. Main Street, Wellfleet", + "location_city": "MA", + "location_zip": "", + "description": "Fixit Clinic co-sponsored by the Wellfleet Recycling Committee\u00a0and the Friends of the Wellfleet Library\nContact: Naomi Robbins - naomi.robbins@wellfleet-ma.gov;\u00a0Lydia Vivante - (508) 237-3133;\u00a0Nancy Gralla (202) 747-4177", + "start": "2026-02-14", + "end": "2026-02-15" + }, + { + "uid": "5tsfjed6mu1c91rec89e8nua5g@google.com", + "summary": "USA-MA-Maynard Maynard Public Library 1:00PM", + "location": "Maynard Public Library, 77 Nason St, Maynard, MA 01754, USA", + "location_name": "Maynard Public Library", + "location_address": "77 Nason St", + "location_city": "Maynard", + "location_zip": "01754", + "description": "https://maynardpubliclibrary.assabetinteractive.com/calendar/maynard-fixit-clinic/
ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2026-02-28", + "end": "2026-03-01" + }, + { + "uid": "2neeqlrk40cpn9v2mhne18abqs@google.com", + "summary": "USA-MA-Boston Boston Building Resources 11AM", + "location": "Boston Building Resources, 100 Terrace St, Boston, MA 02120, USA", + "location_name": "Boston Building Resources", + "location_address": "100 Terrace St", + "location_city": "Boston", + "location_zip": "02120", + "description": "USA-MA-Boston Boston Building Resources 11AM-2PM EDT
https://www.boston.gov/calendar/fixit-clinic-boston-building-resources-1
ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE VENUE
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2026-03-21", + "end": "2026-03-22" + }, + { + "uid": "50smqek317t0um70na52nhvttr@google.com", + "summary": "USA-MA-Medford Mystic Makerspace 1PM", + "location": "Charlotte and William Bloomberg Medford Public Library, 111 High St, Medford, MA 02155, USA", + "location_name": "Charlotte and William Bloomberg Medford Public Library", + "location_address": "111 High St", + "location_city": "Medford", + "location_zip": "02155", + "description": "USA-MA-Medford Mystic Makerspace 1PM
https://medfordlibrary.assabetinteractive.com/calendar/mystic-makerspace-16/
ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE HOST
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2026-03-21", + "end": "2026-03-22" + }, + { + "uid": "2jj9c3ka2eb3ugr0rv1jsomkl1@google.com", + "summary": "USA-MA-Acton Memorial Library 10AM", + "location": "Acton Memorial Library, 486 Main St, Acton, MA 01720, USA", + "location_name": "Acton Memorial Library", + "location_address": "486 Main St", + "location_city": "Acton", + "location_zip": "01720", + "description": "USA-MA-Acton Memorial Library 10AM EDT
ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY
https://www.actonmemoriallibrary.org/calendar/
https://actonmemoriallibrary.assabetinteractive.com/calendar/fix-it-clinic-12
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2026-03-21", + "end": "2026-03-22" + }, + { + "uid": "6avmo9154tivbvuggf389ipe5h@google.com", + "summary": "USA-MA-Chelmsford Public Library 1:30PM", + "location": "Chelmsford Public Library, 25 Boston Rd, Chelmsford, MA 01824, USA", + "location_name": "Chelmsford Public Library", + "location_address": "25 Boston Rd", + "location_city": "Chelmsford", + "location_zip": "01824", + "description": "ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE VENUE
https://chelmsfordlibrary.libcal.com/event/15094307\u00a0
Register and volunteer through the library calendar event.", + "start": "2026-04-11", + "end": "2026-04-12" + }, + { + "uid": "0th7oahoi77gj6h5bv0kq3n0lj@google.com", + "summary": "USA-MA-Cambridge Harvard Cabot Science Library 12PM", + "location": "Cabot Science Library, 1 Oxford St, Cambridge, MA 02138, USA", + "location_name": "Cabot Science Library", + "location_address": "1 Oxford St", + "location_city": "Cambridge", + "location_zip": "02138", + "description": "\u200b\u200b2026-04-15 USA-MA-Cambridge Harvard Cabot Science Library 12-3pm\n\nALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY/VENUE\n-Register items at https://bit.ly/itemcheckin\n-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2026-04-15", + "end": "2026-04-16" + }, + { + "uid": "6q90i2n0kavmaevo11ml8eck9f@google.com", + "summary": "USA-MA-Newton Fix-it Clinic 10AM", + "location": "", + "location_name": "", + "location_address": "", + "location_city": "", + "location_zip": "", + "description": "USA-MA-Newton Fix-it Clinic (organized independently from the main Fixit Clinic network)

BROKE IT? FIX IT!\u00a0 The Fix-It Clinic will show you how! Come to the Newton Free Library (330 Homer St, Newton Centre) on Saturday, April 18, from 10AM-4PM.

Fix-It Clinics empower Newton residents to fix for themselves, and are totally no-cost! Bring in a broken household item and a Repair Coach will help guide you through diagnosing and repair.
\u00a0
Reserve a time slot based on the category of broken item. Walk-in repairs as time permits. Categories will include small appliance & electronics, sewing and textiles, lamp repair and rewiring, jewelry, computers, gluing,\u00a0musical instruments, and more!\u00a0

Fix-It Clinics are run by the Newton Recycling Committee, with the Newton Free Library, the Newton DPW Sustainable Materials Management Division, and funds from a MassDEP grant.

You can also help out by volunteering.

", + "start": "2026-04-18", + "end": "2026-04-19" + }, + { + "uid": "1214dld1gia2vgunef4t6atcoc@google.com", + "summary": "USA-MA-Stoughton Public Library 10AM", + "location": "Stoughton Public Library, 84 Park St, Stoughton, MA 02072, USA", + "location_name": "Stoughton Public Library", + "location_address": "84 Park St", + "location_city": "Stoughton", + "location_zip": "02072", + "description": "

ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY

\u00a0https://www.stoughton.org/1853/FIXIT-CLINIC\u00a0

Register items at https://bit.ly/itemcheckin
Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup

", + "start": "2026-04-25", + "end": "2026-04-26" + }, + { + "uid": "118v6carhialoec3rrb5ik54cu@google.com", + "summary": "USA-MA-Boston Boston Public Library Fixit Junior 2PM", + "location": "Boston Public Library, 700 Boylston St, Boston, MA 02116, USA", + "location_name": "Boston Public Library", + "location_address": "700 Boylston St", + "location_city": "Boston", + "location_zip": "02116", + "description": "https://www.boston.gov/calendar/fixit-clinic-junior-bpl-central-branch

ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup
", + "start": "2026-04-25", + "end": "2026-04-26" + }, + { + "uid": "66hq0nnv4rpvospud5fb8sh5r7@google.com", + "summary": "USA-MA-Beverly Beverly Public Library Noon EDT", + "location": "Beverly Public Library, 32 Essex St, Beverly, MA 01915, USA", + "location_name": "Beverly Public Library", + "location_address": "32 Essex St", + "location_city": "Beverly", + "location_zip": "01915", + "description": "

Register items at https://bit.ly/itemcheckin
Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup

", + "start": "2026-04-25", + "end": "2026-04-26" + }, + { + "uid": "4i4jbu0nlgbdrh2elp85ujs36f@google.com", + "summary": "USA-MA-Shrewsbury Public Library 2PM", + "location": "Shrewsbury Public Library, 609 Main St, Shrewsbury, MA 01545, USA", + "location_name": "Shrewsbury Public Library", + "location_address": "609 Main St", + "location_city": "Shrewsbury", + "location_zip": "01545", + "description": "USA-MA-Shrewsbury Public Library 2-4pm\n\u00a0\nhttps://shrewsburyma.assabetinteractive.com/calendar/fixit-clinic/\n\u00a0\nALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY\n-Register items at https://bit.ly/itemcheckin\n-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2026-04-26", + "end": "2026-04-27" + }, + { + "uid": "4nb0lfljk0a23gpujrk0tcomf5@google.com", + "summary": "USA-MA-Waltham Brandeis University 2PM", + "location": "Brandeis University, 415 South St, Waltham, MA 02453, USA", + "location_name": "Brandeis University", + "location_address": "415 South St", + "location_city": "Waltham", + "location_zip": "02453", + "description": "2026-04-28 USA-MA-Waltham Brandeis University 2PM\n\u00a0\nALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY\n-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2026-04-28", + "end": "2026-04-29" + }, + { + "uid": "2aj6rcsgg699lsbjuccpnuopmi@google.com", + "summary": "USA-MA-Sudbury Coaches' Electronics Workshop 7PM", + "location": "Goodnow Library, 21 Concord Rd, Sudbury, MA 01776, USA", + "location_name": "Goodnow Library", + "location_address": "21 Concord Rd", + "location_city": "Sudbury", + "location_zip": "01776", + "description": "Hands-on electronics workshop at the Goodnow Library conference room in Sudbury on Thursday, April 30 from 7pm-8:45pm.\u00a0 The session will be about DC motors.

RSVP to John Keklak, john.keklak@gmail.com. Space is limited.

This document will guide the discussion and participant exercises.", + "start": "2026-04-30", + "end": "2026-05-01" + }, + { + "uid": "577ldp3feecd4bh5460eo9bg5l@google.com", + "summary": "USA-MA-Boston West End Branch Library Fixit Junior 11AM", + "location": "West End Branch of the Boston Public Library, 151 Cambridge St, Boston, MA 02114, USA", + "location_name": "West End Branch of the Boston Public Library", + "location_address": "151 Cambridge St", + "location_city": "Boston", + "location_zip": "02114", + "description": "ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup
", + "start": "2026-05-02", + "end": "2026-05-03" + }, + { + "uid": "6iaclk49g2gi3fuunju24u9r58@google.com", + "summary": "USA-MA-Boston Artisans Asylum 11AM", + "location": "Artisans Asylum, 96 Holton St, Boston, MA 02135, USA", + "location_name": "Artisans Asylum", + "location_address": "96 Holton St", + "location_city": "Boston", + "location_zip": "02135", + "description": "ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE VENUE\n-Register items at https://bit.ly/itemcheckin\n-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2026-05-03", + "end": "2026-05-04" + }, + { + "uid": "08dlpgc9bn3n3iju5da6leqcg1@google.com", + "summary": "USA-MA-Walpole Walpole Public Library 4-7PM", + "location": "Walpole Public Library, 143 School St, Walpole, MA 02081, USA", + "location_name": "Walpole Public Library", + "location_address": "143 School St", + "location_city": "Walpole", + "location_zip": "02081", + "description": "USA-MA-Walpole Walpole Public Library 4PM
https://docs.google.com/forms/d/e/1FAIpQLSdN40_ovF5Y_WcWSxkQSPkBQZxyZiINXdUfjR1t60gPTKwafA/viewform
ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2026-05-05", + "end": "2026-05-06" + }, + { + "uid": "37dff4i8v751ocrgu5obqkicr2@google.com", + "summary": "USA-MA-Groton Repair Cafe 10AM", + "location": "Prescott Community Center, 145 Main St, Groton, MA 01450, USA", + "location_name": "Prescott Community Center", + "location_address": "145 Main St", + "location_city": "Groton", + "location_zip": "01450", + "description": "

USA-MA-Groton Repair Cafe 10am-1pm\u00a0

ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE HOST

Sign up to volunteer here:\u00a0https://docs.google.com/forms/d/e/1FAIpQLScjeuA3rLB5uVdqhCX5d78ZZ58QUUSGxYvX5CyWjVWzERWQDg/viewform

", + "start": "2026-05-09", + "end": "2026-05-10" + }, + { + "uid": "15va6ivvejhd221ptlbnu2edai@google.com", + "summary": "USA-MA-Cambridge Public Library 11AM", + "location": "Cambridge Public Library, 449 Broadway, Cambridge, MA 02138, USA", + "location_name": "Cambridge Public Library", + "location_address": "449 Broadway", + "location_city": "Cambridge", + "location_zip": "02138", + "description": "

USA-MA-Cambridge Public Library 11am-2pm\u00a0

ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY

https://www.cambridgema.gov/Departments/cambridgepubliclibrary/calendar/2026/05/09/fixitclinicmain

Register items at https://bit.ly/itemcheckin
Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup

", + "start": "2026-05-09", + "end": "2026-05-10" + }, + { + "uid": "5vq0q44kmhhm95c7s028sda3lp@google.com", + "summary": "USA-MA-Sudbury Coaches' Electronics Workshop 7PM", + "location": "Goodnow Library, 21 Concord Rd, Sudbury, MA 01776, USA", + "location_name": "Goodnow Library", + "location_address": "21 Concord Rd", + "location_city": "Sudbury", + "location_zip": "01776", + "description": "Hands-on electronics workshop at the Goodnow Library conference room in Sudbury on Thursday, May 21 from 7pm-8:45pm.\u00a0 The session will be an introduction to power supplies.
\u00a0
RSVP to John Keklak, john.keklak@gmail.com. Space is limited.

This document will guide the discussion and participant exercises.", + "start": "2026-05-21", + "end": "2026-05-22" + }, + { + "uid": "0uotns0k7rutsrr98ch44g1kot@google.com", + "summary": "USA-MA-Boston Boston Public Library 11AM", + "location": "Boston Public Library, 700 Boylston St, Boston, MA 02116, USA", + "location_name": "Boston Public Library", + "location_address": "700 Boylston St", + "location_city": "Boston", + "location_zip": "02116", + "description": "https://www.boston.gov/calendar/fixit-clinic-bpl-central-branch

ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup
", + "start": "2026-05-30", + "end": "2026-05-31" + }, + { + "uid": "53j7o6k1hcfcebohvius4tc8b7@google.com", + "summary": "USA-MA-Mattapan Branch Library Fixit Junior 2-4PM", + "location": "Mattapan Branch of the Boston Public Library, 1350 Blue Hill Ave, Mattapan, MA 02126, USA", + "location_name": "Mattapan Branch of the Boston Public Library", + "location_address": "1350 Blue Hill Ave", + "location_city": "Mattapan", + "location_zip": "02126", + "description": "\u00a0USA-MA-Mattapan Branch Library 2-4PM

Fixit Clinic Junior! Event geared towards youth attendees.
NOTE: If you plan to attend this event as a volunteer you must undergo a background check (CORI) by the City of Boston. Contact Allon Dubler allon.dubler@boston.gov\u00a0 for more information.\u00a0
\u00a0
ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup
", + "start": "2026-06-06", + "end": "2026-06-07" + }, + { + "uid": "76gnnf4sofbvuq51tquu7ob3gm@google.com", + "summary": "USA-MA-Ashland Ashland Library 1PM", + "location": "Ashland Public Library, 66 Front St, Ashland, MA 01721, USA", + "location_name": "Ashland Public Library", + "location_address": "66 Front St", + "location_city": "Ashland", + "location_zip": "01721", + "description": "USA-MA-Ashland Ashland Library 1PM
ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY/VENUE
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2026-06-06", + "end": "2026-06-07" + }, + { + "uid": "2s3a2le8cviuejpdi36t6n1v22@google.com", + "summary": "USA-MA-Boston Boston Building Resources 1PM", + "location": "Boston Building Resources, 100 Terrace St, Boston, MA 02120, USA", + "location_name": "Boston Building Resources", + "location_address": "100 Terrace St", + "location_city": "Boston", + "location_zip": "02120", + "description": "USA-MA-Boston Boston Building Resources 1PM-4PM EDT\n\nALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE VENUE\n-Register items at https://bit.ly/itemcheckin\n-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2026-06-13", + "end": "2026-06-14" + }, + { + "uid": "64r36mvfdruned93msbs0lr8jb@google.com", + "summary": "USA-MA-Medford Mystic Makerspace 1PM", + "location": "Charlotte and William Bloomberg Medford Public Library, 111 High St, Medford, MA 02155, USA", + "location_name": "Charlotte and William Bloomberg Medford Public Library", + "location_address": "111 High St", + "location_city": "Medford", + "location_zip": "02155", + "description": "USA-MA-Medford Mystic Makerspace 1PM
https://medfordlibrary.assabetinteractive.com/calendar/mystic-makerspace-19
ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE HOST
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2026-06-13", + "end": "2026-06-14" + }, + { + "uid": "3k30kg7qqha0geerakn1ht3ke6@google.com", + "summary": "USA-MA-Sudbury Goodnow Library 11AM", + "location": "Goodnow Library, 21 Concord Rd, Sudbury, MA 01776, USA", + "location_name": "Goodnow Library", + "location_address": "21 Concord Rd", + "location_city": "Sudbury", + "location_zip": "01776", + "description": "USA-MA-Sudbury Goodnow Library 11am-2pm
https://goodnowlibrary.org/events/
ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE HOST
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2026-06-13", + "end": "2026-06-14" + }, + { + "uid": "5o21m0duu2vq6l2k51t6325091@google.com", + "summary": "USA-MA-Acton Memorial Library 10AM", + "location": "Acton Memorial Library, 486 Main St, Acton, MA 01720, USA", + "location_name": "Acton Memorial Library", + "location_address": "486 Main St", + "location_city": "Acton", + "location_zip": "01720", + "description": "USA-MA-Acton Memorial Library 10AM EDT
ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY
https://www.actonmemoriallibrary.org/calendar/
https://actonmemoriallibrary.assabetinteractive.com/calendar/fix-it-clinic-13
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2026-06-20", + "end": "2026-06-21" + }, + { + "uid": "1dljmuj84r98gjupd1njqimd2i@google.com", + "summary": "USA-MA-Quincy Thomas Crane Public Library 1:30PM", + "location": "Thomas Crane Public Library, 40 Washington St, Quincy, MA 02169, USA", + "location_name": "Thomas Crane Public Library", + "location_address": "40 Washington St", + "location_city": "Quincy", + "location_zip": "02169", + "description": "

USA-MA-Quincy Thomas Crane Public Library 1:30-4:00pm
https://tcplquincy.org/events/

https://tockify.com/pepo.events/detail/341/1782667800000

ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY
Register repair projects at https://bit.ly/itemcheckin
Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup

", + "start": "2026-06-28", + "end": "2026-06-29" + }, + { + "uid": "38dldjjg1d14un6pjsqaljo1kj@google.com", + "summary": "USA-MA-Arlington Robbins Memorial Library 2:30PM", + "location": "Robbins Library, 700 Massachusetts Ave, Arlington, MA 02476, USA", + "location_name": "Robbins Library", + "location_address": "700 Massachusetts Ave", + "location_city": "Arlington", + "location_zip": "02476", + "description": "ttps://www.robbinslibrary.org/
ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2026-07-11", + "end": "2026-07-12" + }, + { + "uid": "6ctruo7pt1d1l0rn67qqdon8ll@google.com", + "summary": "USA-MA-Boston Boston Building Resources 1PM", + "location": "Boston Building Resources, 100 Terrace St, Boston, MA 02120, USA", + "location_name": "Boston Building Resources", + "location_address": "100 Terrace St", + "location_city": "Boston", + "location_zip": "02120", + "description": "USA-MA-Boston Boston Building Resources 1PM-4PM EDT\n\nALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE VENUE\n-Register items at https://bit.ly/itemcheckin\n-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2026-09-12", + "end": "2026-09-13" + }, + { + "uid": "6i7rmem1ugtcscnl4gtdgna788@google.com", + "summary": "USA-MA-Arlington Robbins Memorial Library 2:30PM", + "location": "Robbins Library, 700 Massachusetts Ave, Arlington, MA 02476, USA", + "location_name": "Robbins Library", + "location_address": "700 Massachusetts Ave", + "location_city": "Arlington", + "location_zip": "02476", + "description": "ttps://www.robbinslibrary.org/
ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2026-10-24", + "end": "2026-10-25" + }, + { + "uid": "1qppi0h2jglt0818gtkpa0cj84@google.com", + "summary": "USA-MA-Boston Boston Building Resources 1PM", + "location": "Boston Building Resources, 100 Terrace St, Boston, MA 02120, USA", + "location_name": "Boston Building Resources", + "location_address": "100 Terrace St", + "location_city": "Boston", + "location_zip": "02120", + "description": "USA-MA-Boston Boston Building Resources 1PM-4PM EDT\n\nALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE VENUE\n-Register items at https://bit.ly/itemcheckin\n-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2026-12-12", + "end": "2026-12-13" + }, + { + "uid": "7ajtpplpjtophag9kb0t59k176@google.com", + "summary": "USA-MA-Arlington Robbins Memorial Library 2:30PM", + "location": "Robbins Library, 700 Massachusetts Ave, Arlington, MA 02476, USA", + "location_name": "Robbins Library", + "location_address": "700 Massachusetts Ave", + "location_city": "Arlington", + "location_zip": "02476", + "description": "ttps://www.robbinslibrary.org/
ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2027-02-06", + "end": "2027-02-07" + }, + { + "uid": "5o931f54l3m03h88ga8kfkscsf@google.com", + "summary": "USA-MA-Arlington Robbins Memorial Library 2:30PM", + "location": "Robbins Library, 700 Massachusetts Ave, Arlington, MA 02476, USA", + "location_name": "Robbins Library", + "location_address": "700 Massachusetts Ave", + "location_city": "Arlington", + "location_zip": "02476", + "description": "ttps://www.robbinslibrary.org/
ALWAYS RECONFIRM DAY/TIME/LOCATION WITH THE LIBRARY
-Register items at https://bit.ly/itemcheckin
-Volunteer to Fixit Coach or observe at http://bit.ly/inpersoncoachsignup", + "start": "2027-05-08", + "end": "2027-05-09" + } +] diff --git a/data-explorations/fixit-clinic/samples/get_fixit_clinic_events.py b/data-explorations/fixit-clinic/samples/get_fixit_clinic_events.py new file mode 100644 index 0000000..9706414 --- /dev/null +++ b/data-explorations/fixit-clinic/samples/get_fixit_clinic_events.py @@ -0,0 +1,171 @@ +"""Fetch events from the public 'Fixit Clinic Programs' Google Calendar. + +The calendar is embedded at: + https://fixitclinic.blogspot.com/p/fixit-clinic-events-calendar.html + +The embed's `src` decodes to the calendar ID below, which exposes a public +iCalendar feed at the URL constructed in ICS_URL. +""" + +from __future__ import annotations + +import json +import re +import sys +import urllib.parse +import urllib.request +from dataclasses import asdict, dataclass +from datetime import datetime, timezone +from typing import Iterator + +CALENDAR_ID = "tvb554o4bdds5lk9g6692d1svc@group.calendar.google.com" +ICS_URL = ( + "https://calendar.google.com/calendar/ical/" + f"{urllib.parse.quote(CALENDAR_ID, safe='')}/public/basic.ics" +) + + +@dataclass +class Event: + uid: str + summary: str + location: str + location_name: str + location_address: str + location_city: str + location_zip: str + description: str + start: str + end: str + + +_STATE_ZIP_RE = re.compile(r"^[A-Z]{2}\s+(\d{5}(?:-\d{4})?)$") + + +def parse_location(location: str) -> tuple[str, str, str, str]: + """Split a Google-formatted address into (name, address, city, zip). + + Typical form: "Name, Street, City, MA 02139, USA". The name part is optional + (e.g. "486 Main St, Acton, MA 01720, USA"). Returns empty strings for parts + that can't be identified. + """ + if not location: + return "", "", "", "" + parts = [p.strip() for p in location.split(",") if p.strip()] + # Drop trailing country. + if parts and parts[-1].upper() in {"USA", "US", "UNITED STATES"}: + parts.pop() + # Extract zip from trailing "STATE ZIP" token. + zip_code = "" + if parts: + m = _STATE_ZIP_RE.match(parts[-1]) + if m: + zip_code = m.group(1) + parts.pop() + if not parts: + return location, "", "", zip_code + city = parts.pop() if len(parts) > 1 else "" + if len(parts) >= 2: + name = parts[0] + address = ", ".join(parts[1:]) + elif len(parts) == 1: + token = parts[0] + # If it starts with a number, treat as address; otherwise as a venue name. + if token[:1].isdigit(): + name, address = "", token + else: + name, address = token, "" + else: + name, address = "", "" + return name, address, city, zip_code + + +def fetch_ics(url: str = ICS_URL) -> str: + with urllib.request.urlopen(url, timeout=30) as resp: + return resp.read().decode("utf-8") + + +def _unfold(ics: str) -> list[str]: + # RFC 5545: lines beginning with a space or tab continue the previous line. + lines: list[str] = [] + for raw in ics.splitlines(): + if raw.startswith((" ", "\t")) and lines: + lines[-1] += raw[1:] + else: + lines.append(raw) + return lines + + +def _unescape(value: str) -> str: + return ( + value.replace("\\N", "\n") + .replace("\\n", "\n") + .replace("\\,", ",") + .replace("\\;", ";") + .replace("\\\\", "\\") + ) + + +def _parse_dt(value: str) -> str: + # Handles forms like 20260615T180000Z, 20260615T180000, and 20260615 (all-day). + try: + if value.endswith("Z"): + dt = datetime.strptime(value, "%Y%m%dT%H%M%SZ").replace(tzinfo=timezone.utc) + return dt.isoformat() + if "T" in value: + return datetime.strptime(value, "%Y%m%dT%H%M%S").isoformat() + return datetime.strptime(value, "%Y%m%d").date().isoformat() + except ValueError: + return value + + +def parse_events(ics: str) -> Iterator[Event]: + in_event = False + fields: dict[str, str] = {} + for line in _unfold(ics): + if line == "BEGIN:VEVENT": + in_event = True + fields = {} + continue + if line == "END:VEVENT": + in_event = False + location = _unescape(fields.get("LOCATION", "")) + name, address, city, zip_code = parse_location(location) + yield Event( + uid=fields.get("UID", ""), + summary=_unescape(fields.get("SUMMARY", "")), + location=location, + location_name=name, + location_address=address, + location_city=city, + location_zip=zip_code, + description=_unescape(fields.get("DESCRIPTION", "")), + start=_parse_dt(fields.get("DTSTART", "")), + end=_parse_dt(fields.get("DTEND", "")), + ) + continue + if not in_event or ":" not in line: + continue + key_part, _, value = line.partition(":") + # Strip parameters: e.g. DTSTART;TZID=America/Los_Angeles + key = key_part.split(";", 1)[0] + fields[key] = value + + +def main(argv: list[str]) -> int: + if len(argv) < 2: + print(f"usage: {argv[0]} ", file=sys.stderr) + return 2 + out_path = argv[1] + ics = fetch_ics() + events = [e for e in parse_events(ics) if e.summary.startswith("USA-MA")] + events.sort(key=lambda e: e.start) + with open(out_path, "w", encoding="utf-8") as f: + json.dump([asdict(e) for e in events], f, indent=2) + f.write("\n") + print(f"Wrote {len(events)} events to {out_path}", file=sys.stderr) + return 0 + + +if __name__ == "__main__": + raise SystemExit(main(sys.argv))