Browse through our comprehensive list of open source communities. Use the filters below to find communities by region or category.
Community Directory
How to Add Your Community
If your community is not listed, you can add it by: 1. Creating a GitHub Issue using our template 2. Submitting a Pull Request with your community details
---title: "Communities"format: html---# Open Source CommunitiesBrowse through our comprehensive list of open source communities. Use the filters below to find communities by region or category.```{r}#| label: setup#| include: falselibrary(tidyverse)library(DT)library(htmltools)# Read communities datacommunities <-read_csv("../data/communities.csv")# Make website URLs clickable with proper formatcommunities <- communities %>%mutate(website_display =ifelse(startsWith(website, "http"),paste0("<a href='", website, "' target='_blank'>", website, "</a>"),paste0("<a href='https://", website, "' target='_blank'>", website, "</a>") ))# Select only the columns we want to displaydisplay_communities <- communities %>%select(name, description, website_display, region, category, format)# Create format options for filteringformat_options <- communities %>%distinct(format) %>%pull()```## Community Directory```{r}#| label: datatable#| output: htmldatatable( display_communities,filter =list(position ="top",clear =FALSE,plain =FALSE ),options =list(pageLength =10,autoWidth =FALSE,scrollX =FALSE,columnDefs =list(list(width ='20%', targets =0), # namelist(width ='30%', targets =1), # descriptionlist(width ='15%', targets =2, render =JS("function(data, type, row) { return type === 'display' ? data : data.replace(/<.*?>/g, ''); }")), # websitelist(width ='12%', targets =3), # regionlist(width ='13%', targets =4), # categorylist(width ='10%', targets =5) # format ),# Custom filter for the format columninitComplete =JS(" function(settings, json) { var table = this.api(); // Create select filter for format column (6th column, index 5) var formatColumn = table.column(5); var formatSelect = $('<select><option value=\"\">All</option><option value=\"in-person\">In-Person</option><option value=\"virtual\">Virtual</option><option value=\"hybrid\">Hybrid</option></select>') .appendTo($(formatColumn.header()).closest('tr').siblings('.filters').children().eq(5).empty()) .on('change', function() { formatColumn .search($(this).val() ? '^' + $(this).val() + '$' : '', true, false) .draw(); }); } ") ),escape =FALSE# Important: Allow HTML in the table)```## How to Add Your CommunityIf your community is not listed, you can add it by:1. Creating a GitHub Issue using our template2. Submitting a Pull Request with your community detailsSee our [Contribution Guidelines](../contribute.html) for more information.