995 lines
262 KiB
HTML
995 lines
262 KiB
HTML
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<!DOCTYPE html>
|
||
<html
|
||
lang="en"
|
||
|
||
data-color-mode="light" data-light-theme="light" data-dark-theme="dark"
|
||
data-a11y-animated-images="system" data-a11y-link-underlines="true"
|
||
|
||
>
|
||
|
||
|
||
|
||
|
||
<head>
|
||
<meta charset="utf-8">
|
||
<link rel="dns-prefetch" href="https://github.githubassets.com">
|
||
<link rel="dns-prefetch" href="https://avatars.githubusercontent.com">
|
||
<link rel="dns-prefetch" href="https://github-cloud.s3.amazonaws.com">
|
||
<link rel="dns-prefetch" href="https://user-images.githubusercontent.com/">
|
||
<link rel="preconnect" href="https://github.githubassets.com" crossorigin>
|
||
<link rel="preconnect" href="https://avatars.githubusercontent.com">
|
||
|
||
<script type="importmap">{"imports":{"react":"https://github.githubassets.com/assets/react-e27d1b3e03961e68.js","react-dom":"https://github.githubassets.com/assets/react-dom-e5fd46a22d5c4058.js","react-dom/client":"https://github.githubassets.com/assets/react-dom-client-1b4a3ee065998cea.js","react-is":"https://github.githubassets.com/assets/react-is-e0b593954b4706d8.js","react-reconciler":"https://github.githubassets.com/assets/react-reconciler-8e99e505c4429605.js","react/compiler-runtime":"https://github.githubassets.com/assets/react-compiler-runtime-4610bd6d3de9c049.js","react/jsx-dev-runtime":"https://github.githubassets.com/assets/react-jsx-dev-runtime-ea55d68667d559e5.js","react/jsx-runtime":"https://github.githubassets.com/assets/react-jsx-runtime-4915cb0f5b3aff04.js","scheduler":"https://github.githubassets.com/assets/scheduler-58b860b049ca307c.js"}}</script>
|
||
<meta name="react-profiling" content="0" data-turbo-transient="true" />
|
||
<meta name="react-import-map" content="react,react-dom,react-dom/client,react-dom/profiling,react-is,react-reconciler,react/compiler-runtime,react/jsx-dev-runtime,react/jsx-runtime,scheduler@777f63f87cd0" data-turbo-track="reload" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/react-e27d1b3e03961e68.js" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/react-compiler-runtime-4610bd6d3de9c049.js" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/scheduler-58b860b049ca307c.js" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/react-dom-e5fd46a22d5c4058.js" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/react-dom-client-1b4a3ee065998cea.js" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/react-is-e0b593954b4706d8.js" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/react-jsx-runtime-4915cb0f5b3aff04.js" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/react-reconciler-8e99e505c4429605.js" />
|
||
|
||
<link crossorigin="anonymous" rel="preload" as="script" href="https://github.githubassets.com/assets/global-banner-disable-5554a5e94272b68a.js" />
|
||
|
||
<link rel="preload" href="https://github.githubassets.com/assets/MonaSansVF-wdth-wght-opsz-902d64c7ad02.woff2" as="font" type="font/woff2" crossorigin>
|
||
|
||
|
||
<link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/light-99f877e9ddfc0e51.css" /><link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/light_high_contrast-48fdd0811afbab3c.css" /><link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/dark-79ad2ace604703b3.css" /><link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/dark_high_contrast-24484a076f02295f.css" /><link data-color-theme="light" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/light-99f877e9ddfc0e51.css" /><link data-color-theme="light_high_contrast" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/light_high_contrast-48fdd0811afbab3c.css" /><link data-color-theme="light_colorblind" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/light_colorblind-f4bf1142976e4bbf.css" /><link data-color-theme="light_colorblind_high_contrast" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/light_colorblind_high_contrast-f661b49995ba0bd8.css" /><link data-color-theme="light_tritanopia" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/light_tritanopia-0b38d22346321c92.css" /><link data-color-theme="light_tritanopia_high_contrast" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/light_tritanopia_high_contrast-f1c62c9e70259b9f.css" /><link data-color-theme="dark" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/dark-79ad2ace604703b3.css" /><link data-color-theme="dark_high_contrast" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/dark_high_contrast-24484a076f02295f.css" /><link data-color-theme="dark_colorblind" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/dark_colorblind-f50cacf0a86b9929.css" /><link data-color-theme="dark_colorblind_high_contrast" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/dark_colorblind_high_contrast-e61d4f4ca17852c2.css" /><link data-color-theme="dark_tritanopia" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/dark_tritanopia-39c10993d5603fac.css" /><link data-color-theme="dark_tritanopia_high_contrast" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/dark_tritanopia_high_contrast-73236c840c0c7d90.css" /><link data-color-theme="dark_dimmed" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/dark_dimmed-0de76f07cc035b10.css" /><link data-color-theme="dark_dimmed_high_contrast" crossorigin="anonymous" media="all" rel="stylesheet" data-href="https://github.githubassets.com/assets/dark_dimmed_high_contrast-fd1500c8744e40d6.css" />
|
||
|
||
<style type="text/css">
|
||
:root {
|
||
--tab-size-preference: 4;
|
||
}
|
||
|
||
pre, code {
|
||
tab-size: var(--tab-size-preference);
|
||
}
|
||
</style>
|
||
|
||
<link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/primer-primitives-ed9ca172356fd545.css" />
|
||
<link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/primer-1d2c7f7b52a6068b.css" />
|
||
<link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/global-adcabba7b5c5d221.css" />
|
||
<link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/github-552513ad07a183a1.css" />
|
||
<link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/site-610c6d3d4706c483.css" />
|
||
<link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/readme-d74cae9ea142d14e.css" />
|
||
|
||
|
||
|
||
<script type="application/json" id="client-env">{"locale":"en","featureFlags":["actions_enable_background_steps","actions_new_hosted_runner_image_select_sizes_and_versions","activity_diff_file_tree","activity_repos_file_tree","activity_repos_overview_header","activity_repos_overview_sidebar","agent_author_search_expansion","agent_author_search_expansion_ui_pulls","alternate_user_config_repo","billing_billable_licenses_cost_center_bucket_fix","billing_budget_expiration","billing_cost_center_list_assigned_resources","billing_discount_threshold_notification","cca_show_aic_usage_per_session","ccr_files_changed_model_picker","code_quality_enablement_banner_targeting","code_quality_remove_preview","code_view_raf_sticky_lines","codespaces_prebuild_region_target_update","coding_agent_third_party_model_ui","copilot_agent_snippy","copilot_api_agentic_issue_marshal_yaml","copilot_automations_pagination","copilot_chat_clear_model_selection_for_default_change","copilot_chat_compact_tables","copilot_chat_header_reorder","copilot_chat_max_upsell","copilot_chat_minimize_contextual","copilot_chat_model_picker_promotions","copilot_chat_models_browser_cache","copilot_chat_new_topic_nudge","copilot_chat_reduce_quota_checks","copilot_chat_vision_dotcom_chat_ga_gate","copilot_chat_vision_preview_gate","copilot_css_textarea_autosize","copilot_custom_copilots","copilot_custom_copilots_feature_preview","copilot_diff_reference_context","copilot_duplicate_thread","copilot_extensions_removal_on_marketplace","copilot_fix_failed_workflows_all_skus","copilot_ftp_hyperspace_upgrade_prompt","copilot_hide_hovercard","copilot_immersive_code_block_transition_wrap","copilot_immersive_embedded_draggable","copilot_immersive_embedded_header_button","copilot_immersive_file_block_transition_open","copilot_immersive_file_preview_keep_mounted","copilot_immersive_suggestion_pills","copilot_immersive_task_hyperlinking","copilot_immersive_task_within_chat_thread","copilot_mc_cli_resume_any_users_task","copilot_mission_control_agent_merge_fix_ci","copilot_mission_control_agent_merge_resolve_conflicts","copilot_mission_control_early_stop","copilot_mission_control_environment_list_icons","copilot_mission_control_managed_sandbox_environments","copilot_mission_control_needs_attention","copilot_mission_control_reasoning_effort","copilot_mission_control_repo_hovercards","copilot_mission_control_sandbox_client_side_clone","copilot_mission_control_sandbox_remote_bypass","copilot_mission_control_session_filters","copilot_mission_control_task_alive_updates","copilot_mission_control_task_sharing","copilot_org_policy_page_focus_mode","copilot_pr_chat_enhancements","copilot_prominent_upgrade_button","copilot_resource_panel","copilot_share_active_subthread","copilot_spaces_ga","copilot_spaces_individual_policies_ga","copilot_spark_handle_nil_friendly_name","copilot_swe_agent_authorization_status_ui","copilot_swe_agent_automation_resource_scoped_writes","copilot_swe_agent_hide_model_picker_if_only_auto","copilot_swe_agent_issue_comment_trigger","copilot_swe_agent_pr_comment_model_picker","copilot_swe_agent_pull_request_comment_trigger","copilot_swe_agent_pull_request_merged_trigger","copilot_swe_agent_pull_request_opened_trigger","copilot_swe_agent_pull_request_synchronize_trigger","copilot_swe_agent_use_subagents","copilot_task_api_github_rest_style","copilot_task_scoped_alive_channel","copilot_token_based_billing","copilot_unconfigured_is_inherited","copilot_user_can_upgrade_plan_field","copilot_workbench_sunset","copilot_workbench_sunset_redirect","copilot_workbench_ubb","dashboard_indexeddb_caching","dashboard_lists_max_age_filter","dashboard_universe_2025_feedback_dialog","flex_suite_disable_river_accordion_dither","glc_code_quality_repo_settings_workflow_config","hide_github_models_ui","hyperspace_2025_logged_out_batch_1","hyperspace_2025_logged_out_batch_2","hyperspace_2025_logged_out_batch_3","in_product_messaging_datadog_monitoring","ipm_global_transactional_message_copilot","ipm_global_transactional_message_issues","ipm_global_transactional_message_prs","ipm_global_transactional_message_repos","ipm_global_transactional_message_spaces","issue_fields_multi_select","issue_inline_avatars","issue_pinned_views","issue_pinned_views_optimistic_updates","issue_relative_time_micro","issues_dashboard_sso_structured_errors","issues_expanded_file_types","issues_hide_closed_sub_issues","issues_lazy_load_comment_box_suggestions","issues_react_chrome_container_query_fix","labels_archiving","labels_archiving_info","landing_pages_ninetailed","lifecycle_label_name_updates","marketing_pages_search_explore_provider","memex_default_issue_create_repository","memex_lazy_hydrate_agent_tasks","memex_live_update_hovercard","memex_mwl_filter_field_delimiter","memex_remove_deprecated_type_issue","merge_queue_restricted_pushers_warning","merge_status_checks_refetch_dedupe","merge_status_header_feedback","oauth_authorize_clickjacking_protection","octocaptcha_origin_optimization","primer_react_css_anchor_positioning","primer_react_merged_forwarded_refs","prs_copilot_app_open_action","prs_css_anchor_positioning","prs_new_conversation_comments_api","pull_request_copilot_attribution_header","pull_request_overview_panel_edit_description","pull_request_persister","pull_request_stacks_feedback_dialog","pull_request_stacks_rebase_conflict_instructions","pull_request_virtualization_image_estimate","pull_request_virtualization_scroll_compensation","pull_request_virtualization_scroll_intent","pulls_dashboard_sidebar_layout","quick_search_lazy_suggestions","react_blob_isolate_code_lines","react_blob_ssr_content_visibility","react_data_router_tanstack_allowed","react_query_props_with_key","react_sandbox_future_tanstack","repo_app_actions_workflows","repo_app_agents","repo_app_commits","repo_app_issues","repo_app_pull_requests","repo_app_turbo","repo_issues_sidebar_layout","repo_overview_ask_copilot","repo_pulls_dashboard_persistence","repos_contributors_limited_default_range","review_involves_filter","rule_ignored_file_paths","rulesets_actor_list_editor","sample_network_conn_type","security_center_artifact_filters_popover","see_who_reacted","semantic_similarity_duplicate_issue_detection","session_logs_ungroup_reasoning_text","set_sha256_on_repo_creation_form","site_banner_desktop_copilot_app","site_ghca_pixel_mona","site_github_app_ga_page","site_github_app_ga_page_highlight","site_github_app_mobile_native_share","site_global_banner_dev_days_attendee","site_global_banner_learn_copilot_sdk","site_global_nav_spark_models_removed","spark_prompt_secret_scanning","spark_server_connection_status","suppress_automated_browser_vitals","swp_forms_disable_octocaptcha","thread_resolution_reason","ui_service_referrer_metrics","update_issue_suggestions","viewscreen_sandbox","warn_inaccessible_attachments","webp_support","workbench_store_readonly","react_import_map","react_import_map"],"githubDomain":"https://github.com","copilotApiOverrideUrl":"https://api.githubcopilot.com","cmcApiUrl":"https://api.github.com/cmc_internal/api"}</script>
|
||
<script crossorigin="anonymous" type="module" src="https://github.githubassets.com/assets/high-contrast-cookie-e3d808ee18eb9784.js"></script>
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/wp-runtime-c40ff75fa4b29faf.js" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/app-foundation-89338d13d121427c.js" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/app-runtime-79275629e212a8de.js" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/fetch-utilities-ef80792c471f3488.js" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/ser-564408e9198dff6d.js" />
|
||
<script crossorigin="anonymous" type="module" src="https://github.githubassets.com/assets/environment-6301446d495cadb7.js" defer="defer"></script>
|
||
<link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/app-runtime.db39abd7070fb379.module.css" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/catalyst-86a8f5de995615f8.js" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/selector-observer-e88088f989b27670.js" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/relative-time-element-85cb37305f54dec4.js" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/by4-73006a52f155289f.js" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/ja9-36f036c13c2e3a4c.js" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/kw-866fd9513ae95106.js" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/r1-b075aab3204f32f9.js" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/jz5-7c5d1669717041f8.js" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/hj-5126390ff433704d.js" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/j05-dce4d588268f0f7e.js" />
|
||
<script crossorigin="anonymous" type="module" src="https://github.githubassets.com/assets/github-elements-d5a098151cf3b06a.js" defer="defer"></script>
|
||
<script crossorigin="anonymous" type="module" src="https://github.githubassets.com/assets/element-registry-e87c875160a83f53.js" defer="defer"></script>
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/runtime-helpers-f3f5d71440009c48.js" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/aria-live-edd4f18194230d9e.js" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/hotkey-5109c77d7ac61078.js" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/react-core-220b14bbb2e5a3aa.js" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/04-a76c47ec12c12e01.js" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/ur-024971cb63acad59.js" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/4t-9933bcccf9a9524f.js" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/6ny-c969fbae697a356f.js" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/yhq-3a209035a30b1a09.js" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/z1v-da5b33b877bfa358.js" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/wo-09f85d22a6c8931b.js" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/9y-81cfe57dc9040f3e.js" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/j0-41a4cf04cbd99503.js" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/0p-50de93b282dbc67c.js" />
|
||
<script crossorigin="anonymous" type="module" src="https://github.githubassets.com/assets/behaviors-f18992dbb9345e7b.js" defer="defer"></script>
|
||
<link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/react-core.1d66df2418934e22.module.css" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/pc-0868e9f8520905ab.js" />
|
||
<script crossorigin="anonymous" type="module" src="https://github.githubassets.com/assets/marketing-b932e85ce464415a.js" defer="defer"></script>
|
||
<script crossorigin="anonymous" type="module" src="https://github.githubassets.com/assets/marketing-readme-ff299a83f8bcbcb5.js" defer="defer"></script>
|
||
|
||
<script type="application/ld+json">
|
||
{
|
||
"@context": "http://schema.org",
|
||
"@type": "BreadcrumbList",
|
||
"itemListElement": [{
|
||
"@type": "ListItem",
|
||
"position": 1,
|
||
"item": {
|
||
"@id": "https://github.com/readme",
|
||
"name": "The ReadME Project"
|
||
}
|
||
},
|
||
{
|
||
"@type": "ListItem",
|
||
"position": 2,
|
||
"item": {
|
||
"@id": "https://github.com/readme/guides/staff-engineers",
|
||
"name": "How to put the plus in ‘staff+’ engineer "
|
||
}
|
||
}
|
||
]
|
||
}
|
||
</script>
|
||
|
||
<script type="application/ld+json">{
|
||
"@context": "http://schema.org",
|
||
"@type": "Article",
|
||
"headline": "How to put the plus in ‘staff+’ engineer ",
|
||
"datePublished": "2023-03-14T02:00:00+00:00",
|
||
"publisher": {
|
||
"@type": "Organization",
|
||
"name": "GitHub",
|
||
"logo": "https://github.githubassets.com/assets/github-logo-55c5b9a1fe52.png"
|
||
},
|
||
"author": [
|
||
{
|
||
"@type": "Person",
|
||
"name": "Ryn Daniels",
|
||
"url": "https://github.com/ryndaniels"
|
||
}
|
||
],
|
||
"image": [
|
||
"https://images.ctfassets.net/s5uo95nf6njh/1h41ZjJ911RjwSKicsepcL/c8e1638195c33e7d0cbc172271d36738/DevOps_IMG_1394__1___1_.jpg"
|
||
]
|
||
}</script>
|
||
|
||
|
||
<title>How to put the plus in ‘staff+’ engineer · GitHub</title>
|
||
|
||
|
||
|
||
<meta name="route-pattern" content="/readme/guides/:id(.:format)" data-turbo-transient>
|
||
<meta name="route-controller" content="site_readme_guides" data-turbo-transient>
|
||
<meta name="route-action" content="show" data-turbo-transient>
|
||
<meta name="fetch-nonce" content="v2:f1e62f9a-b92a-fc46-6263-a1c3aeae42c7">
|
||
|
||
|
||
<meta name="current-catalog-service-hash" content="3b3a86e94adb1936974b9e80c6c5c959f35b1d5f75b93677737ffa36daf92bbd">
|
||
|
||
|
||
<meta name="request-id" content="E990:149CF3:143BA4:22EF6E:6AA4E676" data-pjax-transient="true"/><meta name="html-safe-nonce" content="7f4438897fe73fc497f954336844f6a3ae20abeab1af98c2a9d433c7e87d8836" data-pjax-transient="true"/><meta name="visitor-payload" content="eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJFOTkwOjE0OUNGMzoxNDNCQTQ6MjJFRjZFOjZBQTRFNjc2IiwidmlzaXRvcl9pZCI6IjE2MzQ0ODc0MjE2MDU1NzAxNjYiLCJyZWdpb25fZWRnZSI6Indlc3R1czMiLCJyZWdpb25fcmVuZGVyIjoid2VzdHVzMyJ9" data-pjax-transient="true"/><meta name="visitor-hmac" content="6421a40854caf0c555831b5ac03a26d7c2bdd08867c235f287b7a5e52029b830" data-pjax-transient="true"/>
|
||
|
||
|
||
|
||
|
||
<meta name="github-keyboard-shortcuts" content="copilot" data-turbo-transient="true" />
|
||
|
||
|
||
<meta name="selected-link" value="/readme/guides/staff-engineers" data-turbo-transient>
|
||
<link rel="assets" href="https://github.githubassets.com/">
|
||
|
||
<meta name="google-site-verification" content="Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I">
|
||
|
||
<meta name="octolytics-url" content="https://collector.github.com/github/collect" />
|
||
|
||
<meta name="octolytics-page-type" content="marketing" />
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<meta name="user-login" content="">
|
||
|
||
|
||
|
||
<meta name="viewport" content="width=device-width">
|
||
|
||
|
||
|
||
<meta name="description" content="Whether you’re already a staff+ engineer or you’re looking to advance, here’s how to be a force multiplier for your teams and organization">
|
||
|
||
<link rel="search" type="application/opensearchdescription+xml" href="/opensearch.xml" title="GitHub">
|
||
|
||
<link rel="fluid-icon" href="https://github.com/fluidicon.png" title="GitHub">
|
||
<meta property="fb:app_id" content="1401488693436528">
|
||
<meta name="apple-itunes-app" content="app-id=1477376905, app-argument=https://github.com/readme/guides/staff-engineers" />
|
||
|
||
<meta name="twitter:image" content="https://images.ctfassets.net/s5uo95nf6njh/3sBQCkU6O0Lwc2Tp2LkMrU/e20b22c6ecaa66be267ebdf2d7774816/1920x1080-ReadMe-Site_Hero-Ryn_Daniels.jpg" /><meta name="twitter:site" content="@github" /><meta name="twitter:card" content="summary_large_image" /><meta name="twitter:title" content="How to put the plus in ‘staff+’ engineer " /><meta name="twitter:description" content="Whether you’re already a staff+ engineer or you’re looking to advance, here’s how to be a force multiplier for your teams and organization" />
|
||
<meta property="og:image" content="https://images.ctfassets.net/s5uo95nf6njh/3sBQCkU6O0Lwc2Tp2LkMrU/e20b22c6ecaa66be267ebdf2d7774816/1920x1080-ReadMe-Site_Hero-Ryn_Daniels.jpg" /><meta property="og:image:alt" content="Whether you’re already a staff+ engineer or you’re looking to advance, here’s how to be a force multiplier for your teams and organization" /><meta property="og:site_name" content="GitHub" /><meta property="og:type" content="object" /><meta property="og:title" content="How to put the plus in ‘staff+’ engineer " /><meta property="og:url" content="https://github.com/readme/guides/staff-engineers" /><meta property="og:description" content="Whether you’re already a staff+ engineer or you’re looking to advance, here’s how to be a force multiplier for your teams and organization" />
|
||
|
||
|
||
|
||
|
||
|
||
<meta name="hostname" content="github.com">
|
||
|
||
|
||
|
||
<meta name="expected-hostname" content="github.com">
|
||
|
||
|
||
<meta http-equiv="x-pjax-version" content="06eaf606a96480b3e092be77ad1e5c561b1061aebb8c4db7db8d3eca6114edf6" data-turbo-track="reload">
|
||
<meta http-equiv="x-pjax-csp-version" content="a0721a5a35c7ad5dae5b0d7b119c20d884a2506083b3f43642f810f0a129fcc2" data-turbo-track="reload">
|
||
<meta http-equiv="x-pjax-css-version" content="b7a4653359baeee3d827ca91d7c149e4962234557341efae58fad4aa5ce82a0a" data-turbo-track="reload">
|
||
<meta http-equiv="x-pjax-js-version" content="96efb01f6430a1ad6e22f9e0b8a04625dd76a461e93da809464e8d1f9c36c59c" data-turbo-track="reload">
|
||
|
||
<meta name="turbo-cache-control" content="no-preview" data-turbo-transient="">
|
||
|
||
<meta name="readme-story-name" content="Ryn Daniels">
|
||
<link rel="preconnect" href="https://images.ctfassets.net">
|
||
<link rel="preload" href="https://github.githubassets.com/assets/Blimone-Medium-Inktrap-870240417f29.woff2" as="font" type="font/woff2" crossorigin>
|
||
<link rel="preload" href="https://github.githubassets.com/assets/hubot-sans-597e45ee1797.woff2" as="font" type="font/woff2" crossorigin>
|
||
<link rel="preload" href="https://github.githubassets.com/assets/MonaSansVF-wdth-wght-opsz-902d64c7ad02.woff2" as="font" type="font/woff2" crossorigin>
|
||
<meta name="is_logged_out_page" content="true">
|
||
|
||
|
||
|
||
|
||
|
||
<link rel="canonical" href="https://github.com/readme/guides/staff-engineers" data-turbo-transient>
|
||
|
||
|
||
<meta name="turbo-body-classes" content="logged-out env-production page-responsive readme-project header-overlay">
|
||
<meta name="disable-turbo" content="true">
|
||
|
||
|
||
<meta name="browser-stats-url" content="https://api.github.com/_private/browser/stats">
|
||
|
||
|
||
<meta name="browser-errors-url" content="https://api.github.com/_private/browser/errors">
|
||
|
||
<meta name="release" content="ee0d1b245383d5b08b4f8b7ecd18cda5bdccbbe4" data-turbo-track="reload">
|
||
<meta name="ui-target" content="full">
|
||
|
||
<link rel="mask-icon" href="https://github.githubassets.com/assets/pinned-octocat-093da3e6fa40.svg" color="#000000">
|
||
<link rel="alternate icon" class="js-site-favicon" type="image/png" href="https://github.githubassets.com/favicons/favicon.png">
|
||
<link rel="icon" class="js-site-favicon" type="image/svg+xml" href="https://github.githubassets.com/favicons/favicon.svg" data-base-href="https://github.githubassets.com/favicons/favicon">
|
||
|
||
<meta name="theme-color" content="#1e2327">
|
||
<meta name="color-scheme" content="light dark" />
|
||
|
||
|
||
<link rel="manifest" href="/manifest.json" crossOrigin="use-credentials">
|
||
|
||
</head>
|
||
|
||
<body class="logged-out env-production page-responsive readme-project header-overlay" style="word-wrap: break-word;" >
|
||
<div data-turbo-body class="logged-out env-production page-responsive readme-project header-overlay" style="word-wrap: break-word;" data-turbo="false">
|
||
<div id="__primerPortalRoot__" style="z-index: 1000; position: absolute; width: 100%;" data-turbo-permanent></div>
|
||
|
||
|
||
<div class="position-relative header-wrapper js-header-wrapper ">
|
||
<a href="#start-of-content" data-skip-target-assigned="false" class="px-2 tmp-py-4 color-bg-accent-emphasis color-fg-on-emphasis show-on-focus js-skip-to-content">Skip to content</a>
|
||
|
||
<span data-view-component="true" class="progress-pjax-loader Progress position-fixed width-full">
|
||
<span style="width: 0%;" data-view-component="true" class="Progress-item progress-pjax-loader-bar left-0 top-0 color-bg-accent-emphasis"></span>
|
||
</span>
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/t7l-bf6f21d7e7a43c35.js" fetchpriority="low" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/l7j-a8c3c3ab9790e365.js" fetchpriority="low" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/3np-a0186ba63220b6ce.js" fetchpriority="low" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/bi0-e2f78de823e39ca9.js" fetchpriority="low" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/keyboard-shortcuts-dialog-98c649c7176c489a.js" fetchpriority="low" />
|
||
<link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/primer-react-css.bad9067f7ec9f6d1.module.css" />
|
||
<link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/keyboard-shortcuts-dialog.b5f61eada8ea05c6.module.css" />
|
||
|
||
<react-partial
|
||
partial-name="keyboard-shortcuts-dialog"
|
||
data-ssr="false"
|
||
data-attempted-ssr="false"
|
||
data-react-profiling="false"
|
||
>
|
||
|
||
<script type="application/json" data-target="react-partial.embeddedData">{"props":{"docsUrl":"https://docs.github.com/get-started/accessibility/keyboard-shortcuts"}}</script>
|
||
<div data-target="react-partial.reactRoot"></div>
|
||
</react-partial>
|
||
|
||
|
||
|
||
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/pg-edbe06b8984594ea.js" fetchpriority="low" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/marketing-global-banner-d646d2982531bd06.js" fetchpriority="low" />
|
||
<link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/primer-react-css.bad9067f7ec9f6d1.module.css" />
|
||
<link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/primer-react-brand-css.206bbd4fd232654e.module.css" />
|
||
<link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/marketing-global-banner.a12a1154019e2c70.module.css" />
|
||
|
||
<react-partial
|
||
partial-name="marketing-global-banner"
|
||
data-ssr="false"
|
||
data-attempted-ssr="true"
|
||
data-react-profiling="false"
|
||
>
|
||
|
||
<script type="application/json" data-target="react-partial.embeddedData">{"props":{"logged_in":false,"current_path":"/readme/guides/staff-engineers","locale":"en","is_staff":false}}</script>
|
||
<div data-target="react-partial.reactRoot"></div>
|
||
</react-partial>
|
||
|
||
|
||
|
||
<script crossorigin="anonymous" type="module" src="https://github.githubassets.com/assets/global-banner-disable-5554a5e94272b68a.js"></script>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/fz5-23f28c0f388769c9.js" fetchpriority="low" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/lht-b91be4a9ea8a3210.js" fetchpriority="low" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/p1-76a75a6081059b19.js" fetchpriority="low" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/tua-81c88ff7e39af43c.js" fetchpriority="low" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/4s-854aef8a5dc4797a.js" fetchpriority="low" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/marketing-header-b4f24b72e9c5634b.js" fetchpriority="low" />
|
||
<link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/primer-react-css.bad9067f7ec9f6d1.module.css" />
|
||
<link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/primer-react-brand-css.206bbd4fd232654e.module.css" />
|
||
<link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/4s.795b697dd2335e43.module.css" />
|
||
|
||
<react-partial
|
||
partial-name="marketing-header"
|
||
data-ssr="true"
|
||
data-attempted-ssr="true"
|
||
data-react-profiling="false"
|
||
>
|
||
|
||
<script type="application/json" data-target="react-partial.embeddedData">{"props":{"color_mode":"light","logged_in":false,"marketing_page":true,"home_path":"/","login_path":"/login?return_to=https%3A%2F%2Fgithub.com%2Freadme%2Fguides%2Fstaff-engineers","signup_path":"/signup?ref_cta=Sign+up\u0026ref_loc=header+logged+out\u0026ref_page=%2Freadme%2Fguides%2Fstaff-engineers\u0026source=header","signup_enabled":true,"is_signup_controller":false,"show_search_and_nav":true,"hide_search":false,"private_mode_enabled":false,"should_use_dotcom_links":true,"auth_hydro_click":"{\"event_type\":\"authentication.click\",\"payload\":{\"location_in_page\":\"site header menu\",\"repository_id\":null,\"auth_type\":\"SIGN_UP\",\"originating_url\":\"https://github.com/readme/guides/staff-engineers\",\"user_id\":null}}","auth_hydro_click_hmac":"d60eecaca40837c180be58a31b3a67a778cf89df28714316d04a6cffa7423da0","overlay":true,"fixed":false}}</script>
|
||
<div data-target="react-partial.reactRoot"><div data-color-mode="light" data-light-theme="light" data-dark-theme="dark"><header class="MarketingHeader-module__root__Tk7n3 HeaderMktg header-logged-out MarketingHeader-module__overlay__jnPuQ" role="banner" data-marketing-header="true" data-color-mode="light" data-light-theme="light" data-dark-theme="dark" data-is-top="true"><h2 class="MarketingHeader-module__visuallyHidden__sqKsl">Navigation Menu</h2><button type="button" class="MarketingHeader-module__backdrop__sw4RU" aria-label="Close navigation menu"></button><div class="MarketingHeader-module__bar__mBSyE"><div class="MarketingHeader-module__topRow__yeury"><div class="MarketingHeader-module__toggleSlot__hDxbh"><button type="button" class="HeaderMenuToggle-module__toggle__i8EiC" aria-label="Toggle navigation" aria-expanded="false"><span class="HeaderMenuToggle-module__toggleBar__jVN0H"></span><span class="HeaderMenuToggle-module__toggleBar__jVN0H"></span><span class="HeaderMenuToggle-module__toggleBar__jVN0H"></span></button></div><a href="/" aria-label="Homepage" class="HeaderLogo-module__logo__UFyHI" data-analytics-event="{"action":"homepage","tag":"link","context":"logo","location":"header","label":"homepage_link_logo_header"}"><svg data-component="Octicon" aria-hidden="true" focusable="false" class="octicon octicon-mark-github" viewBox="0 0 24 24" width="32" height="32" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M10.226 17.284c-2.965-.36-5.054-2.493-5.054-5.256 0-1.123.404-2.336 1.078-3.144-.292-.741-.247-2.314.09-2.965.898-.112 2.111.36 2.83 1.01.853-.269 1.752-.404 2.853-.404 1.1 0 1.999.135 2.807.382.696-.629 1.932-1.1 2.83-.988.315.606.36 2.179.067 2.942.72.854 1.101 2 1.101 3.167 0 2.763-2.089 4.852-5.098 5.234.763.494 1.28 1.572 1.28 2.807v2.336c0 .674.561 1.056 1.235.786 4.066-1.55 7.255-5.615 7.255-10.646C23.5 6.188 18.334 1 11.978 1 5.62 1 .5 6.188.5 12.545c0 4.986 3.167 9.12 7.435 10.669.606.225 1.19-.18 1.19-.786V20.63a2.9 2.9 0 0 1-1.078.224c-1.483 0-2.359-.808-2.987-2.313-.247-.607-.517-.966-1.034-1.033-.27-.023-.359-.135-.359-.27 0-.27.45-.471.898-.471.652 0 1.213.404 1.797 1.235.45.651.921.943 1.483.943.561 0 .92-.202 1.437-.719.382-.381.674-.718.944-.943"></path></svg></a><div class="AuthCTAs-module__mobileActions__NNzeV"><a class="Primer_Brand__Button-module__Button___scH9Z Primer_Brand__Button-module__Button--subtle___F7pEE Primer_Brand__Button-module__Button--size-small___zQrEw AuthCTAs-module__cta__WpwQq" href="/login?return_to=https%3A%2F%2Fgithub.com%2Freadme%2Fguides%2Fstaff-engineers" data-analytics-event="{"action":"sign_in","tag":"link","context":"auth_cta","location":"header","label":"sign_in_link_auth_cta_header"}" data-hydro-click="{"event_type":"authentication.click","payload":{"location_in_page":"site header menu","repository_id":null,"auth_type":"SIGN_UP","originating_url":"https://github.com/readme/guides/staff-engineers","user_id":null}}" data-hydro-click-hmac="d60eecaca40837c180be58a31b3a67a778cf89df28714316d04a6cffa7423da0"><span class="Primer_Brand__Button-module__Button__text___ED0bX"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Text-module__Text--weight-medium___qJKf_ Primer_Brand__Button-module__Button--label___qrkyz Primer_Brand__Button-module__Button--label-subtle___8ndWH">Sign in</span></span></a></div></div><div class="MarketingHeader-module__menu__GIy3y"><div class="MarketingHeader-module__menuWrapper__owstH"><nav class="MarketingNavigation-module__nav__W0KYY" aria-label="Global"><ul class="MarketingNavigation-module__list__tFbMb"><li><div class="NavDropdown-module__container__l2YeI"><button type="button" class="NavDropdown-module__button__PEHWX" aria-expanded="false" aria-controls="_R_nd_">Platform<svg data-component="Octicon" aria-hidden="true" focusable="false" class="octicon octicon-triangle-right NavDropdown-module__buttonIcon__Tkl8_" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="m6.427 4.427 3.396 3.396a.25.25 0 0 1 0 .354l-3.396 3.396A.25.25 0 0 1 6 11.396V4.604a.25.25 0 0 1 .427-.177Z"></path></svg></button><div id="_R_nd_" class="NavDropdown-module__dropdown__xm1jd"><ul class="NavDropdown-module__list__zuCgG"><li><div class="NavGroup-module__group__W8SqJ"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--monospace___QXHDQ Primer_Brand__Text-module__Text--muted___rE6mh Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Text-module__Text--weight-medium___qJKf_ NavGroup-module__title__Wzxz2" id="_R_5knd_">AI CODE CREATION</span><ul class="NavGroup-module__list__UCOFy" aria-labelledby="_R_5knd_"><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0 NavLink-module__link__EG3d4" href="https://github.com/features/copilot" data-analytics-event="{"action":"github_copilot","tag":"link","context":"platform","location":"navbar","label":"github_copilot_link_platform_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Text-module__Text--weight-medium___qJKf_ NavLink-module__title__Q7t0p"><svg data-component="Octicon" aria-hidden="true" focusable="false" class="octicon octicon-copilot NavLink-module__icon__ltGNM" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M7.998 15.035c-4.562 0-7.873-2.914-7.998-3.749V9.338c.085-.628.677-1.686 1.588-2.065.013-.07.024-.143.036-.218.029-.183.06-.384.126-.612-.201-.508-.254-1.084-.254-1.656 0-.87.128-1.769.693-2.484.579-.733 1.494-1.124 2.724-1.261 1.206-.134 2.262.034 2.944.765.05.053.096.108.139.165.044-.057.094-.112.143-.165.682-.731 1.738-.899 2.944-.765 1.23.137 2.145.528 2.724 1.261.566.715.693 1.614.693 2.484 0 .572-.053 1.148-.254 1.656.066.228.098.429.126.612.012.076.024.148.037.218.924.385 1.522 1.471 1.591 2.095v1.872c0 .766-3.351 3.795-8.002 3.795Zm0-1.485c2.28 0 4.584-1.11 5.002-1.433V7.862l-.023-.116c-.49.21-1.075.291-1.727.291-1.146 0-2.059-.327-2.71-.991A3.222 3.222 0 0 1 8 6.303a3.24 3.24 0 0 1-.544.743c-.65.664-1.563.991-2.71.991-.652 0-1.236-.081-1.727-.291l-.023.116v4.255c.419.323 2.722 1.433 5.002 1.433ZM6.762 2.83c-.193-.206-.637-.413-1.682-.297-1.019.113-1.479.404-1.713.7-.247.312-.369.789-.369 1.554 0 .793.129 1.171.308 1.371.162.181.519.379 1.442.379.853 0 1.339-.235 1.638-.54.315-.322.527-.827.617-1.553.117-.935-.037-1.395-.241-1.614Zm4.155-.297c-1.044-.116-1.488.091-1.681.297-.204.219-.359.679-.242 1.614.091.726.303 1.231.618 1.553.299.305.784.54 1.638.54.922 0 1.28-.198 1.442-.379.179-.2.308-.578.308-1.371 0-.765-.123-1.242-.37-1.554-.233-.296-.693-.587-1.713-.7Z"></path><path d="M6.25 9.037a.75.75 0 0 1 .75.75v1.501a.75.75 0 0 1-1.5 0V9.787a.75.75 0 0 1 .75-.75Zm4.25.75v1.501a.75.75 0 0 1-1.5 0V9.787a.75.75 0 0 1 1.5 0Z"></path></svg>GitHub Copilot</span><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--muted___rE6mh Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS NavLink-module__subtitle__X4gkW">Write better code with AI</span></span></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0 NavLink-module__link__EG3d4" href="https://github.com/features/ai/github-app" data-analytics-event="{"action":"github_copilot_app","tag":"link","context":"platform","location":"navbar","label":"github_copilot_app_link_platform_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Text-module__Text--weight-medium___qJKf_ NavLink-module__title__Q7t0p"><svg data-component="Octicon" aria-hidden="true" focusable="false" class="octicon octicon-mark-github NavLink-module__icon__ltGNM" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M6.766 11.328c-2.063-.25-3.516-1.734-3.516-3.656 0-.781.281-1.625.75-2.188-.203-.515-.172-1.609.063-2.062.625-.078 1.468.25 1.968.703.594-.187 1.219-.281 1.985-.281.765 0 1.39.094 1.953.265.484-.437 1.344-.765 1.969-.687.218.422.25 1.515.046 2.047.5.593.766 1.39.766 2.203 0 1.922-1.453 3.375-3.547 3.64.531.344.89 1.094.89 1.954v1.625c0 .468.391.734.86.547C13.781 14.359 16 11.53 16 8.03 16 3.61 12.406 0 7.984 0 3.563 0 0 3.61 0 8.031a7.88 7.88 0 0 0 5.172 7.422c.422.156.828-.125.828-.547v-1.25c-.219.094-.5.156-.75.156-1.031 0-1.64-.562-2.078-1.609-.172-.422-.36-.672-.719-.719-.187-.015-.25-.093-.25-.187 0-.188.313-.328.625-.328.453 0 .844.281 1.25.86.313.452.64.655 1.031.655s.641-.14 1-.5c.266-.265.47-.5.657-.656"></path></svg>GitHub Copilot app</span><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--muted___rE6mh Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS NavLink-module__subtitle__X4gkW">Direct agents from issue to merge</span></span></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0 NavLink-module__link__EG3d4" href="https://github.com/mcp" data-analytics-event="{"action":"mcp_registry","tag":"link","context":"platform","location":"navbar","label":"mcp_registry_link_platform_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Text-module__Text--weight-medium___qJKf_ NavLink-module__title__Q7t0p"><svg data-component="Octicon" aria-hidden="true" focusable="false" class="octicon octicon-mcp NavLink-module__icon__ltGNM" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M5.52 1.12a3.578 3.578 0 0 1 6.078 2.98 3.578 3.578 0 0 1 2.982 6.08l-3.292 3.293a.252.252 0 0 0 0 .354l.843.843a.749.749 0 1 1-1.06 1.06l-.844-.843a1.75 1.75 0 0 1 0-2.474L13.52 9.12a2.08 2.08 0 0 0 0-2.94 2.08 2.08 0 0 0-2.94 0L7.731 9.03A.75.75 0 0 1 6.67 7.97l2.85-2.85a2.08 2.08 0 0 0 0-2.94 2.08 2.08 0 0 0-2.94 0l-4.799 4.8A.75.75 0 0 1 .72 5.92Z"></path><path d="M7.52 3.12a.749.749 0 1 1 1.06 1.06L5.731 7.03A2.079 2.079 0 0 0 8.67 9.97l2.85-2.85a.749.749 0 1 1 1.06 1.06l-2.849 2.85A3.578 3.578 0 0 1 4.67 5.97Z"></path></svg>MCP Registry</span><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--muted___rE6mh Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS NavLink-module__subtitle__X4gkW">Integrate external tools</span></span></a></li></ul></div></li><li><div class="NavGroup-module__group__W8SqJ"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--monospace___QXHDQ Primer_Brand__Text-module__Text--muted___rE6mh Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Text-module__Text--weight-medium___qJKf_ NavGroup-module__title__Wzxz2" id="_R_9knd_">DEVELOPER WORKFLOWS</span><ul class="NavGroup-module__list__UCOFy" aria-labelledby="_R_9knd_"><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0 NavLink-module__link__EG3d4" href="https://github.com/features/actions" data-analytics-event="{"action":"actions","tag":"link","context":"platform","location":"navbar","label":"actions_link_platform_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Text-module__Text--weight-medium___qJKf_ NavLink-module__title__Q7t0p"><svg data-component="Octicon" aria-hidden="true" focusable="false" class="octicon octicon-workflow NavLink-module__icon__ltGNM" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M0 1.75C0 .784.784 0 1.75 0h3.5C6.216 0 7 .784 7 1.75v3.5A1.75 1.75 0 0 1 5.25 7H4v4a1 1 0 0 0 1 1h4v-1.25C9 9.784 9.784 9 10.75 9h3.5c.966 0 1.75.784 1.75 1.75v3.5A1.75 1.75 0 0 1 14.25 16h-3.5A1.75 1.75 0 0 1 9 14.25v-.75H5A2.5 2.5 0 0 1 2.5 11V7h-.75A1.75 1.75 0 0 1 0 5.25Zm1.75-.25a.25.25 0 0 0-.25.25v3.5c0 .138.112.25.25.25h3.5a.25.25 0 0 0 .25-.25v-3.5a.25.25 0 0 0-.25-.25Zm9 9a.25.25 0 0 0-.25.25v3.5c0 .138.112.25.25.25h3.5a.25.25 0 0 0 .25-.25v-3.5a.25.25 0 0 0-.25-.25Z"></path></svg>Actions</span><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--muted___rE6mh Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS NavLink-module__subtitle__X4gkW">Automate any workflow</span></span></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0 NavLink-module__link__EG3d4" href="https://github.com/features/codespaces" data-analytics-event="{"action":"codespaces","tag":"link","context":"platform","location":"navbar","label":"codespaces_link_platform_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Text-module__Text--weight-medium___qJKf_ NavLink-module__title__Q7t0p"><svg data-component="Octicon" aria-hidden="true" focusable="false" class="octicon octicon-codespaces NavLink-module__icon__ltGNM" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M0 11.25c0-.966.784-1.75 1.75-1.75h12.5c.966 0 1.75.784 1.75 1.75v3A1.75 1.75 0 0 1 14.25 16H1.75A1.75 1.75 0 0 1 0 14.25Zm2-9.5C2 .784 2.784 0 3.75 0h8.5C13.216 0 14 .784 14 1.75v5a1.75 1.75 0 0 1-1.75 1.75h-8.5A1.75 1.75 0 0 1 2 6.75Zm1.75-.25a.25.25 0 0 0-.25.25v5c0 .138.112.25.25.25h8.5a.25.25 0 0 0 .25-.25v-5a.25.25 0 0 0-.25-.25Zm-2 9.5a.25.25 0 0 0-.25.25v3c0 .138.112.25.25.25h12.5a.25.25 0 0 0 .25-.25v-3a.25.25 0 0 0-.25-.25Z"></path><path d="M7 12.75a.75.75 0 0 1 .75-.75h4.5a.75.75 0 0 1 0 1.5h-4.5a.75.75 0 0 1-.75-.75Zm-4 0a.75.75 0 0 1 .75-.75h.5a.75.75 0 0 1 0 1.5h-.5a.75.75 0 0 1-.75-.75Z"></path></svg>Codespaces</span><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--muted___rE6mh Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS NavLink-module__subtitle__X4gkW">Instant dev environments</span></span></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0 NavLink-module__link__EG3d4" href="https://github.com/features/issues" data-analytics-event="{"action":"issues","tag":"link","context":"platform","location":"navbar","label":"issues_link_platform_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Text-module__Text--weight-medium___qJKf_ NavLink-module__title__Q7t0p"><svg data-component="Octicon" aria-hidden="true" focusable="false" class="octicon octicon-issue-opened NavLink-module__icon__ltGNM" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M8 9.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z"></path><path d="M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0ZM1.5 8a6.5 6.5 0 1 0 13 0 6.5 6.5 0 0 0-13 0Z"></path></svg>Issues</span><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--muted___rE6mh Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS NavLink-module__subtitle__X4gkW">Plan and track work</span></span></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0 NavLink-module__link__EG3d4" href="https://github.com/features/code-review" data-analytics-event="{"action":"code_review","tag":"link","context":"platform","location":"navbar","label":"code_review_link_platform_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Text-module__Text--weight-medium___qJKf_ NavLink-module__title__Q7t0p"><svg data-component="Octicon" aria-hidden="true" focusable="false" class="octicon octicon-code NavLink-module__icon__ltGNM" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="m11.28 3.22 4.25 4.25a.75.75 0 0 1 0 1.06l-4.25 4.25a.749.749 0 0 1-1.275-.326.749.749 0 0 1 .215-.734L13.94 8l-3.72-3.72a.749.749 0 0 1 .326-1.275.749.749 0 0 1 .734.215Zm-6.56 0a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042L2.06 8l3.72 3.72a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215L.47 8.53a.75.75 0 0 1 0-1.06Z"></path></svg>Code Review</span><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--muted___rE6mh Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS NavLink-module__subtitle__X4gkW">Manage code changes</span></span></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0 NavLink-module__link__EG3d4" href="https://github.com/features/code-quality" data-analytics-event="{"action":"code_quality","tag":"link","context":"platform","location":"navbar","label":"code_quality_link_platform_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Text-module__Text--weight-medium___qJKf_ NavLink-module__title__Q7t0p"><svg data-component="Octicon" aria-hidden="true" focusable="false" class="octicon octicon-codescan-checkmark NavLink-module__icon__ltGNM" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M10.28 6.28a.75.75 0 1 0-1.06-1.06L6.25 8.19l-.97-.97a.75.75 0 0 0-1.06 1.06l1.5 1.5a.75.75 0 0 0 1.06 0l3.5-3.5Z"></path><path d="M7.5 15a7.5 7.5 0 1 1 5.807-2.754l2.473 2.474a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215l-2.474-2.473A7.472 7.472 0 0 1 7.5 15Zm0-13.5a6 6 0 1 0 4.094 10.386.748.748 0 0 1 .293-.292 6.002 6.002 0 0 0 1.117-6.486A6.002 6.002 0 0 0 7.5 1.5Z"></path></svg>Code Quality</span><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--muted___rE6mh Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS NavLink-module__subtitle__X4gkW">Enforce quality at merge</span></span></a></li></ul></div></li><li><div class="NavGroup-module__group__W8SqJ"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--monospace___QXHDQ Primer_Brand__Text-module__Text--muted___rE6mh Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Text-module__Text--weight-medium___qJKf_ NavGroup-module__title__Wzxz2" id="_R_dknd_">APPLICATION SECURITY</span><ul class="NavGroup-module__list__UCOFy" aria-labelledby="_R_dknd_"><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0 NavLink-module__link__EG3d4" href="https://github.com/security/advanced-security" data-analytics-event="{"action":"github_advanced_security","tag":"link","context":"platform","location":"navbar","label":"github_advanced_security_link_platform_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Text-module__Text--weight-medium___qJKf_ NavLink-module__title__Q7t0p"><svg data-component="Octicon" aria-hidden="true" focusable="false" class="octicon octicon-shield-check NavLink-module__icon__ltGNM" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="m8.533.133 5.25 1.68A1.75 1.75 0 0 1 15 3.48V7c0 1.566-.32 3.182-1.303 4.682-.983 1.498-2.585 2.813-5.032 3.855a1.697 1.697 0 0 1-1.33 0c-2.447-1.042-4.049-2.357-5.032-3.855C1.32 10.182 1 8.566 1 7V3.48a1.75 1.75 0 0 1 1.217-1.667l5.25-1.68a1.748 1.748 0 0 1 1.066 0Zm-.61 1.429.001.001-5.25 1.68a.251.251 0 0 0-.174.237V7c0 1.36.275 2.666 1.057 3.859.784 1.194 2.121 2.342 4.366 3.298a.196.196 0 0 0 .154 0c2.245-.957 3.582-2.103 4.366-3.297C13.225 9.666 13.5 8.358 13.5 7V3.48a.25.25 0 0 0-.174-.238l-5.25-1.68a.25.25 0 0 0-.153 0ZM11.28 6.28l-3.5 3.5a.75.75 0 0 1-1.06 0l-1.5-1.5a.749.749 0 0 1 .326-1.275.749.749 0 0 1 .734.215l.97.97 2.97-2.97a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042Z"></path></svg>GitHub Advanced Security</span><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--muted___rE6mh Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS NavLink-module__subtitle__X4gkW">Find and fix vulnerabilities</span></span></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0 NavLink-module__link__EG3d4" href="https://github.com/security/advanced-security/code-security" data-analytics-event="{"action":"code_security","tag":"link","context":"platform","location":"navbar","label":"code_security_link_platform_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Text-module__Text--weight-medium___qJKf_ NavLink-module__title__Q7t0p"><svg data-component="Octicon" aria-hidden="true" focusable="false" class="octicon octicon-code-square NavLink-module__icon__ltGNM" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M0 1.75C0 .784.784 0 1.75 0h12.5C15.216 0 16 .784 16 1.75v12.5A1.75 1.75 0 0 1 14.25 16H1.75A1.75 1.75 0 0 1 0 14.25Zm1.75-.25a.25.25 0 0 0-.25.25v12.5c0 .138.112.25.25.25h12.5a.25.25 0 0 0 .25-.25V1.75a.25.25 0 0 0-.25-.25Zm7.47 3.97a.75.75 0 0 1 1.06 0l2 2a.75.75 0 0 1 0 1.06l-2 2a.749.749 0 0 1-1.275-.326.749.749 0 0 1 .215-.734L10.69 8 9.22 6.53a.75.75 0 0 1 0-1.06ZM6.78 6.53 5.31 8l1.47 1.47a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215l-2-2a.75.75 0 0 1 0-1.06l2-2a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042Z"></path></svg>Code security</span><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--muted___rE6mh Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS NavLink-module__subtitle__X4gkW">Secure your code as you build</span></span></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0 NavLink-module__link__EG3d4" href="https://github.com/security/advanced-security/secret-protection" data-analytics-event="{"action":"secret_protection","tag":"link","context":"platform","location":"navbar","label":"secret_protection_link_platform_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Text-module__Text--weight-medium___qJKf_ NavLink-module__title__Q7t0p"><svg data-component="Octicon" aria-hidden="true" focusable="false" class="octicon octicon-lock NavLink-module__icon__ltGNM" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M4 4a4 4 0 0 1 8 0v2h.25c.966 0 1.75.784 1.75 1.75v5.5A1.75 1.75 0 0 1 12.25 15h-8.5A1.75 1.75 0 0 1 2 13.25v-5.5C2 6.784 2.784 6 3.75 6H4Zm8.25 3.5h-8.5a.25.25 0 0 0-.25.25v5.5c0 .138.112.25.25.25h8.5a.25.25 0 0 0 .25-.25v-5.5a.25.25 0 0 0-.25-.25ZM10.5 6V4a2.5 2.5 0 1 0-5 0v2Z"></path></svg>Secret protection</span><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--muted___rE6mh Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS NavLink-module__subtitle__X4gkW">Stop leaks before they start</span></span></a></li></ul></div></li><li><div class="NavGroup-module__group__W8SqJ NavGroup-module__hasSeparator__FnMrN"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--monospace___QXHDQ Primer_Brand__Text-module__Text--muted___rE6mh Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Text-module__Text--weight-medium___qJKf_ NavGroup-module__title__Wzxz2" id="_R_hknd_">EXPLORE</span><ul class="NavGroup-module__list__UCOFy" aria-labelledby="_R_hknd_"><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://github.com/why-github" data-analytics-event="{"action":"why_github","tag":"link","context":"platform","location":"navbar","label":"why_github_link_platform_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">Why GitHub</span></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0 Primer_Brand__Link-module__Link--is-external___xsncV" href="https://docs.github.com" data-analytics-event="{"action":"documentation","tag":"link","context":"platform","location":"navbar","label":"documentation_link_platform_navbar"}" target="_blank" rel="noreferrer"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">Documentation</span><svg focusable="false" aria-label="External link" class="octicon octicon-link-external" role="img" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M3.75 2h3.5a.75.75 0 0 1 0 1.5h-3.5a.25.25 0 0 0-.25.25v8.5c0 .138.112.25.25.25h8.5a.25.25 0 0 0 .25-.25v-3.5a.75.75 0 0 1 1.5 0v3.5A1.75 1.75 0 0 1 12.25 14h-8.5A1.75 1.75 0 0 1 2 12.25v-8.5C2 2.784 2.784 2 3.75 2Zm6.854-1h4.146a.25.25 0 0 1 .25.25v4.146a.25.25 0 0 1-.427.177L13.03 4.03 9.28 7.78a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042l3.75-3.75-1.543-1.543A.25.25 0 0 1 10.604 1Z"></path></svg></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0 Primer_Brand__Link-module__Link--is-external___xsncV" href="https://github.blog" data-analytics-event="{"action":"blog","tag":"link","context":"platform","location":"navbar","label":"blog_link_platform_navbar"}" target="_blank" rel="noreferrer"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">Blog</span><svg focusable="false" aria-label="External link" class="octicon octicon-link-external" role="img" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M3.75 2h3.5a.75.75 0 0 1 0 1.5h-3.5a.25.25 0 0 0-.25.25v8.5c0 .138.112.25.25.25h8.5a.25.25 0 0 0 .25-.25v-3.5a.75.75 0 0 1 1.5 0v3.5A1.75 1.75 0 0 1 12.25 14h-8.5A1.75 1.75 0 0 1 2 12.25v-8.5C2 2.784 2.784 2 3.75 2Zm6.854-1h4.146a.25.25 0 0 1 .25.25v4.146a.25.25 0 0 1-.427.177L13.03 4.03 9.28 7.78a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042l3.75-3.75-1.543-1.543A.25.25 0 0 1 10.604 1Z"></path></svg></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0 Primer_Brand__Link-module__Link--is-external___xsncV" href="https://github.blog/changelog" data-analytics-event="{"action":"changelog","tag":"link","context":"platform","location":"navbar","label":"changelog_link_platform_navbar"}" target="_blank" rel="noreferrer"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">Changelog</span><svg focusable="false" aria-label="External link" class="octicon octicon-link-external" role="img" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M3.75 2h3.5a.75.75 0 0 1 0 1.5h-3.5a.25.25 0 0 0-.25.25v8.5c0 .138.112.25.25.25h8.5a.25.25 0 0 0 .25-.25v-3.5a.75.75 0 0 1 1.5 0v3.5A1.75 1.75 0 0 1 12.25 14h-8.5A1.75 1.75 0 0 1 2 12.25v-8.5C2 2.784 2.784 2 3.75 2Zm6.854-1h4.146a.25.25 0 0 1 .25.25v4.146a.25.25 0 0 1-.427.177L13.03 4.03 9.28 7.78a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042l3.75-3.75-1.543-1.543A.25.25 0 0 1 10.604 1Z"></path></svg></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://github.com/marketplace" data-analytics-event="{"action":"marketplace","tag":"link","context":"platform","location":"navbar","label":"marketplace_link_platform_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">Marketplace</span></a></li></ul></div></li></ul><div class="NavDropdown-module__trailingLinkContainer__VgJGL"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0 Primer_Brand__Link-module__Link--arrow-end___esdN8" href="https://github.com/features" data-analytics-event="{"action":"view_all_features","tag":"link","context":"platform","location":"navbar","label":"view_all_features_link_platform_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">View all features</span><svg class="Primer_Brand__ExpandableArrow-module__ExpandableArrow___aaZs9 Primer_Brand__Link-module__Link-arrow___yd78i" width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true" focusable="false"><path fill="currentColor" d="M7.28033 3.21967C6.98744 2.92678 6.51256 2.92678 6.21967 3.21967C5.92678 3.51256 5.92678 3.98744 6.21967 4.28033L7.28033 3.21967ZM11 8L11.5303 8.53033C11.8232 8.23744 11.8232 7.76256 11.5303 7.46967L11 8ZM6.21967 11.7197C5.92678 12.0126 5.92678 12.4874 6.21967 12.7803C6.51256 13.0732 6.98744 13.0732 7.28033 12.7803L6.21967 11.7197ZM6.21967 4.28033L10.4697 8.53033L11.5303 7.46967L7.28033 3.21967L6.21967 4.28033ZM10.4697 7.46967L6.21967 11.7197L7.28033 12.7803L11.5303 8.53033L10.4697 7.46967Z"></path><path class="Primer_Brand__ExpandableArrow-module__ExpandableArrow-stem___0K8Hz" stroke="currentColor" d="M1.75 8H11" stroke-width="1.5" stroke-linecap="round"></path></svg></a></div></div></div></li><li><div class="NavDropdown-module__container__l2YeI"><button type="button" class="NavDropdown-module__button__PEHWX" aria-expanded="false" aria-controls="_R_17d_">Solutions<svg data-component="Octicon" aria-hidden="true" focusable="false" class="octicon octicon-triangle-right NavDropdown-module__buttonIcon__Tkl8_" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="m6.427 4.427 3.396 3.396a.25.25 0 0 1 0 .354l-3.396 3.396A.25.25 0 0 1 6 11.396V4.604a.25.25 0 0 1 .427-.177Z"></path></svg></button><div id="_R_17d_" class="NavDropdown-module__dropdown__xm1jd"><ul class="NavDropdown-module__list__zuCgG"><li><div class="NavGroup-module__group__W8SqJ"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--monospace___QXHDQ Primer_Brand__Text-module__Text--muted___rE6mh Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Text-module__Text--weight-medium___qJKf_ NavGroup-module__title__Wzxz2" id="_R_5l7d_">BY COMPANY SIZE</span><ul class="NavGroup-module__list__UCOFy" aria-labelledby="_R_5l7d_"><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://github.com/enterprise" data-analytics-event="{"action":"enterprises","tag":"link","context":"solutions","location":"navbar","label":"enterprises_link_solutions_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">Enterprises</span></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://github.com/team" data-analytics-event="{"action":"small_and_medium_teams","tag":"link","context":"solutions","location":"navbar","label":"small_and_medium_teams_link_solutions_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">Small and medium teams</span></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://github.com/enterprise/startups" data-analytics-event="{"action":"startups","tag":"link","context":"solutions","location":"navbar","label":"startups_link_solutions_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">Startups</span></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://github.com/solutions/industry/nonprofits" data-analytics-event="{"action":"nonprofits","tag":"link","context":"solutions","location":"navbar","label":"nonprofits_link_solutions_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">Nonprofits</span></a></li></ul></div></li><li><div class="NavGroup-module__group__W8SqJ"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--monospace___QXHDQ Primer_Brand__Text-module__Text--muted___rE6mh Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Text-module__Text--weight-medium___qJKf_ NavGroup-module__title__Wzxz2" id="_R_9l7d_">BY USE CASE</span><ul class="NavGroup-module__list__UCOFy" aria-labelledby="_R_9l7d_"><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://github.com/solutions/use-case/app-modernization" data-analytics-event="{"action":"app_modernization","tag":"link","context":"solutions","location":"navbar","label":"app_modernization_link_solutions_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">App Modernization</span></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://github.com/solutions/use-case/devsecops" data-analytics-event="{"action":"devsecops","tag":"link","context":"solutions","location":"navbar","label":"devsecops_link_solutions_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">DevSecOps</span></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://github.com/solutions/use-case/devops" data-analytics-event="{"action":"devops","tag":"link","context":"solutions","location":"navbar","label":"devops_link_solutions_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">DevOps</span></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://github.com/solutions/use-case/ci-cd" data-analytics-event="{"action":"ci/cd","tag":"link","context":"solutions","location":"navbar","label":"ci/cd_link_solutions_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">CI/CD</span></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0 Primer_Brand__Link-module__Link--arrow-end___esdN8" href="https://github.com/solutions/use-case" data-analytics-event="{"action":"view_all_use_cases","tag":"link","context":"solutions","location":"navbar","label":"view_all_use_cases_link_solutions_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">View all use cases</span><svg class="Primer_Brand__ExpandableArrow-module__ExpandableArrow___aaZs9 Primer_Brand__Link-module__Link-arrow___yd78i" width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true" focusable="false"><path fill="currentColor" d="M7.28033 3.21967C6.98744 2.92678 6.51256 2.92678 6.21967 3.21967C5.92678 3.51256 5.92678 3.98744 6.21967 4.28033L7.28033 3.21967ZM11 8L11.5303 8.53033C11.8232 8.23744 11.8232 7.76256 11.5303 7.46967L11 8ZM6.21967 11.7197C5.92678 12.0126 5.92678 12.4874 6.21967 12.7803C6.51256 13.0732 6.98744 13.0732 7.28033 12.7803L6.21967 11.7197ZM6.21967 4.28033L10.4697 8.53033L11.5303 7.46967L7.28033 3.21967L6.21967 4.28033ZM10.4697 7.46967L6.21967 11.7197L7.28033 12.7803L11.5303 8.53033L10.4697 7.46967Z"></path><path class="Primer_Brand__ExpandableArrow-module__ExpandableArrow-stem___0K8Hz" stroke="currentColor" d="M1.75 8H11" stroke-width="1.5" stroke-linecap="round"></path></svg></a></li></ul></div></li><li><div class="NavGroup-module__group__W8SqJ"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--monospace___QXHDQ Primer_Brand__Text-module__Text--muted___rE6mh Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Text-module__Text--weight-medium___qJKf_ NavGroup-module__title__Wzxz2" id="_R_dl7d_">BY INDUSTRY</span><ul class="NavGroup-module__list__UCOFy" aria-labelledby="_R_dl7d_"><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://github.com/solutions/industry/healthcare" data-analytics-event="{"action":"healthcare","tag":"link","context":"solutions","location":"navbar","label":"healthcare_link_solutions_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">Healthcare</span></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://github.com/solutions/industry/financial-services" data-analytics-event="{"action":"financial_services","tag":"link","context":"solutions","location":"navbar","label":"financial_services_link_solutions_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">Financial services</span></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://github.com/solutions/industry/manufacturing" data-analytics-event="{"action":"manufacturing","tag":"link","context":"solutions","location":"navbar","label":"manufacturing_link_solutions_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">Manufacturing</span></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://github.com/solutions/industry/government" data-analytics-event="{"action":"government","tag":"link","context":"solutions","location":"navbar","label":"government_link_solutions_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">Government</span></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0 Primer_Brand__Link-module__Link--arrow-end___esdN8" href="https://github.com/solutions/industry" data-analytics-event="{"action":"view_all_industries","tag":"link","context":"solutions","location":"navbar","label":"view_all_industries_link_solutions_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">View all industries</span><svg class="Primer_Brand__ExpandableArrow-module__ExpandableArrow___aaZs9 Primer_Brand__Link-module__Link-arrow___yd78i" width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true" focusable="false"><path fill="currentColor" d="M7.28033 3.21967C6.98744 2.92678 6.51256 2.92678 6.21967 3.21967C5.92678 3.51256 5.92678 3.98744 6.21967 4.28033L7.28033 3.21967ZM11 8L11.5303 8.53033C11.8232 8.23744 11.8232 7.76256 11.5303 7.46967L11 8ZM6.21967 11.7197C5.92678 12.0126 5.92678 12.4874 6.21967 12.7803C6.51256 13.0732 6.98744 13.0732 7.28033 12.7803L6.21967 11.7197ZM6.21967 4.28033L10.4697 8.53033L11.5303 7.46967L7.28033 3.21967L6.21967 4.28033ZM10.4697 7.46967L6.21967 11.7197L7.28033 12.7803L11.5303 8.53033L10.4697 7.46967Z"></path><path class="Primer_Brand__ExpandableArrow-module__ExpandableArrow-stem___0K8Hz" stroke="currentColor" d="M1.75 8H11" stroke-width="1.5" stroke-linecap="round"></path></svg></a></li></ul></div></li></ul><div class="NavDropdown-module__trailingLinkContainer__VgJGL"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0 Primer_Brand__Link-module__Link--arrow-end___esdN8" href="https://github.com/solutions" data-analytics-event="{"action":"view_all_solutions","tag":"link","context":"solutions","location":"navbar","label":"view_all_solutions_link_solutions_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">View all solutions</span><svg class="Primer_Brand__ExpandableArrow-module__ExpandableArrow___aaZs9 Primer_Brand__Link-module__Link-arrow___yd78i" width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true" focusable="false"><path fill="currentColor" d="M7.28033 3.21967C6.98744 2.92678 6.51256 2.92678 6.21967 3.21967C5.92678 3.51256 5.92678 3.98744 6.21967 4.28033L7.28033 3.21967ZM11 8L11.5303 8.53033C11.8232 8.23744 11.8232 7.76256 11.5303 7.46967L11 8ZM6.21967 11.7197C5.92678 12.0126 5.92678 12.4874 6.21967 12.7803C6.51256 13.0732 6.98744 13.0732 7.28033 12.7803L6.21967 11.7197ZM6.21967 4.28033L10.4697 8.53033L11.5303 7.46967L7.28033 3.21967L6.21967 4.28033ZM10.4697 7.46967L6.21967 11.7197L7.28033 12.7803L11.5303 8.53033L10.4697 7.46967Z"></path><path class="Primer_Brand__ExpandableArrow-module__ExpandableArrow-stem___0K8Hz" stroke="currentColor" d="M1.75 8H11" stroke-width="1.5" stroke-linecap="round"></path></svg></a></div></div></div></li><li><div class="NavDropdown-module__container__l2YeI"><button type="button" class="NavDropdown-module__button__PEHWX" aria-expanded="false" aria-controls="_R_1nd_">Resources<svg data-component="Octicon" aria-hidden="true" focusable="false" class="octicon octicon-triangle-right NavDropdown-module__buttonIcon__Tkl8_" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="m6.427 4.427 3.396 3.396a.25.25 0 0 1 0 .354l-3.396 3.396A.25.25 0 0 1 6 11.396V4.604a.25.25 0 0 1 .427-.177Z"></path></svg></button><div id="_R_1nd_" class="NavDropdown-module__dropdown__xm1jd"><ul class="NavDropdown-module__list__zuCgG"><li><div class="NavGroup-module__group__W8SqJ"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--monospace___QXHDQ Primer_Brand__Text-module__Text--muted___rE6mh Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Text-module__Text--weight-medium___qJKf_ NavGroup-module__title__Wzxz2" id="_R_5lnd_">EXPLORE BY TOPIC</span><ul class="NavGroup-module__list__UCOFy" aria-labelledby="_R_5lnd_"><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://github.com/resources/articles?topic=ai" data-analytics-event="{"action":"ai","tag":"link","context":"resources","location":"navbar","label":"ai_link_resources_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">AI</span></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://github.com/resources/articles?topic=software-development" data-analytics-event="{"action":"software_development","tag":"link","context":"resources","location":"navbar","label":"software_development_link_resources_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">Software Development</span></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://github.com/resources/articles?topic=devops" data-analytics-event="{"action":"devops","tag":"link","context":"resources","location":"navbar","label":"devops_link_resources_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">DevOps</span></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://github.com/resources/articles?topic=security" data-analytics-event="{"action":"security","tag":"link","context":"resources","location":"navbar","label":"security_link_resources_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">Security</span></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0 Primer_Brand__Link-module__Link--arrow-end___esdN8" href="https://github.com/resources/articles" data-analytics-event="{"action":"view_all_topics","tag":"link","context":"resources","location":"navbar","label":"view_all_topics_link_resources_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">View all topics</span><svg class="Primer_Brand__ExpandableArrow-module__ExpandableArrow___aaZs9 Primer_Brand__Link-module__Link-arrow___yd78i" width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true" focusable="false"><path fill="currentColor" d="M7.28033 3.21967C6.98744 2.92678 6.51256 2.92678 6.21967 3.21967C5.92678 3.51256 5.92678 3.98744 6.21967 4.28033L7.28033 3.21967ZM11 8L11.5303 8.53033C11.8232 8.23744 11.8232 7.76256 11.5303 7.46967L11 8ZM6.21967 11.7197C5.92678 12.0126 5.92678 12.4874 6.21967 12.7803C6.51256 13.0732 6.98744 13.0732 7.28033 12.7803L6.21967 11.7197ZM6.21967 4.28033L10.4697 8.53033L11.5303 7.46967L7.28033 3.21967L6.21967 4.28033ZM10.4697 7.46967L6.21967 11.7197L7.28033 12.7803L11.5303 8.53033L10.4697 7.46967Z"></path><path class="Primer_Brand__ExpandableArrow-module__ExpandableArrow-stem___0K8Hz" stroke="currentColor" d="M1.75 8H11" stroke-width="1.5" stroke-linecap="round"></path></svg></a></li></ul></div></li><li><div class="NavGroup-module__group__W8SqJ"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--monospace___QXHDQ Primer_Brand__Text-module__Text--muted___rE6mh Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Text-module__Text--weight-medium___qJKf_ NavGroup-module__title__Wzxz2" id="_R_9lnd_">EXPLORE BY TYPE</span><ul class="NavGroup-module__list__UCOFy" aria-labelledby="_R_9lnd_"><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://github.com/customer-stories" data-analytics-event="{"action":"customer_stories","tag":"link","context":"resources","location":"navbar","label":"customer_stories_link_resources_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">Customer stories</span></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://github.com/resources/events" data-analytics-event="{"action":"events__webinars","tag":"link","context":"resources","location":"navbar","label":"events__webinars_link_resources_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">Events & webinars</span></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://github.com/resources/whitepapers" data-analytics-event="{"action":"ebooks__reports","tag":"link","context":"resources","location":"navbar","label":"ebooks__reports_link_resources_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">Ebooks & reports</span></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://github.com/solutions/executive-insights" data-analytics-event="{"action":"business_insights","tag":"link","context":"resources","location":"navbar","label":"business_insights_link_resources_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">Business insights</span></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0 Primer_Brand__Link-module__Link--is-external___xsncV" href="https://skills.github.com" data-analytics-event="{"action":"github_skills","tag":"link","context":"resources","location":"navbar","label":"github_skills_link_resources_navbar"}" target="_blank" rel="noreferrer"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">GitHub Skills</span><svg focusable="false" aria-label="External link" class="octicon octicon-link-external" role="img" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M3.75 2h3.5a.75.75 0 0 1 0 1.5h-3.5a.25.25 0 0 0-.25.25v8.5c0 .138.112.25.25.25h8.5a.25.25 0 0 0 .25-.25v-3.5a.75.75 0 0 1 1.5 0v3.5A1.75 1.75 0 0 1 12.25 14h-8.5A1.75 1.75 0 0 1 2 12.25v-8.5C2 2.784 2.784 2 3.75 2Zm6.854-1h4.146a.25.25 0 0 1 .25.25v4.146a.25.25 0 0 1-.427.177L13.03 4.03 9.28 7.78a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042l3.75-3.75-1.543-1.543A.25.25 0 0 1 10.604 1Z"></path></svg></a></li></ul></div></li><li><div class="NavGroup-module__group__W8SqJ"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--monospace___QXHDQ Primer_Brand__Text-module__Text--muted___rE6mh Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Text-module__Text--weight-medium___qJKf_ NavGroup-module__title__Wzxz2" id="_R_dlnd_">SUPPORT & SERVICES</span><ul class="NavGroup-module__list__UCOFy" aria-labelledby="_R_dlnd_"><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0 Primer_Brand__Link-module__Link--is-external___xsncV" href="https://docs.github.com" data-analytics-event="{"action":"documentation","tag":"link","context":"resources","location":"navbar","label":"documentation_link_resources_navbar"}" target="_blank" rel="noreferrer"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">Documentation</span><svg focusable="false" aria-label="External link" class="octicon octicon-link-external" role="img" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M3.75 2h3.5a.75.75 0 0 1 0 1.5h-3.5a.25.25 0 0 0-.25.25v8.5c0 .138.112.25.25.25h8.5a.25.25 0 0 0 .25-.25v-3.5a.75.75 0 0 1 1.5 0v3.5A1.75 1.75 0 0 1 12.25 14h-8.5A1.75 1.75 0 0 1 2 12.25v-8.5C2 2.784 2.784 2 3.75 2Zm6.854-1h4.146a.25.25 0 0 1 .25.25v4.146a.25.25 0 0 1-.427.177L13.03 4.03 9.28 7.78a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042l3.75-3.75-1.543-1.543A.25.25 0 0 1 10.604 1Z"></path></svg></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0 Primer_Brand__Link-module__Link--is-external___xsncV" href="https://support.github.com" data-analytics-event="{"action":"customer_support","tag":"link","context":"resources","location":"navbar","label":"customer_support_link_resources_navbar"}" target="_blank" rel="noreferrer"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">Customer support</span><svg focusable="false" aria-label="External link" class="octicon octicon-link-external" role="img" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M3.75 2h3.5a.75.75 0 0 1 0 1.5h-3.5a.25.25 0 0 0-.25.25v8.5c0 .138.112.25.25.25h8.5a.25.25 0 0 0 .25-.25v-3.5a.75.75 0 0 1 1.5 0v3.5A1.75 1.75 0 0 1 12.25 14h-8.5A1.75 1.75 0 0 1 2 12.25v-8.5C2 2.784 2.784 2 3.75 2Zm6.854-1h4.146a.25.25 0 0 1 .25.25v4.146a.25.25 0 0 1-.427.177L13.03 4.03 9.28 7.78a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042l3.75-3.75-1.543-1.543A.25.25 0 0 1 10.604 1Z"></path></svg></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://github.com/orgs/community/discussions" data-analytics-event="{"action":"community_forum","tag":"link","context":"resources","location":"navbar","label":"community_forum_link_resources_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">Community forum</span></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://github.com/trust-center" data-analytics-event="{"action":"trust_center","tag":"link","context":"resources","location":"navbar","label":"trust_center_link_resources_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">Trust center</span></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://github.com/partners" data-analytics-event="{"action":"partners","tag":"link","context":"resources","location":"navbar","label":"partners_link_resources_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">Partners</span></a></li></ul></div></li></ul><div class="NavDropdown-module__trailingLinkContainer__VgJGL"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0 Primer_Brand__Link-module__Link--arrow-end___esdN8" href="https://github.com/resources" data-analytics-event="{"action":"view_all_resources","tag":"link","context":"resources","location":"navbar","label":"view_all_resources_link_resources_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">View all resources</span><svg class="Primer_Brand__ExpandableArrow-module__ExpandableArrow___aaZs9 Primer_Brand__Link-module__Link-arrow___yd78i" width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true" focusable="false"><path fill="currentColor" d="M7.28033 3.21967C6.98744 2.92678 6.51256 2.92678 6.21967 3.21967C5.92678 3.51256 5.92678 3.98744 6.21967 4.28033L7.28033 3.21967ZM11 8L11.5303 8.53033C11.8232 8.23744 11.8232 7.76256 11.5303 7.46967L11 8ZM6.21967 11.7197C5.92678 12.0126 5.92678 12.4874 6.21967 12.7803C6.51256 13.0732 6.98744 13.0732 7.28033 12.7803L6.21967 11.7197ZM6.21967 4.28033L10.4697 8.53033L11.5303 7.46967L7.28033 3.21967L6.21967 4.28033ZM10.4697 7.46967L6.21967 11.7197L7.28033 12.7803L11.5303 8.53033L10.4697 7.46967Z"></path><path class="Primer_Brand__ExpandableArrow-module__ExpandableArrow-stem___0K8Hz" stroke="currentColor" d="M1.75 8H11" stroke-width="1.5" stroke-linecap="round"></path></svg></a></div></div></div></li><li><div class="NavDropdown-module__container__l2YeI"><button type="button" class="NavDropdown-module__button__PEHWX" aria-expanded="false" aria-controls="_R_27d_">Open Source<svg data-component="Octicon" aria-hidden="true" focusable="false" class="octicon octicon-triangle-right NavDropdown-module__buttonIcon__Tkl8_" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="m6.427 4.427 3.396 3.396a.25.25 0 0 1 0 .354l-3.396 3.396A.25.25 0 0 1 6 11.396V4.604a.25.25 0 0 1 .427-.177Z"></path></svg></button><div id="_R_27d_" class="NavDropdown-module__dropdown__xm1jd"><ul class="NavDropdown-module__list__zuCgG"><li><div class="NavGroup-module__group__W8SqJ"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--monospace___QXHDQ Primer_Brand__Text-module__Text--muted___rE6mh Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Text-module__Text--weight-medium___qJKf_ NavGroup-module__title__Wzxz2" id="_R_5m7d_">COMMUNITY</span><ul class="NavGroup-module__list__UCOFy" aria-labelledby="_R_5m7d_"><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0 NavLink-module__link__EG3d4" href="https://github.com/open-source/sponsors" data-analytics-event="{"action":"github_sponsors","tag":"link","context":"open_source","location":"navbar","label":"github_sponsors_link_open_source_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Text-module__Text--weight-medium___qJKf_ NavLink-module__title__Q7t0p"><svg data-component="Octicon" aria-hidden="true" focusable="false" class="octicon octicon-sponsor-tiers NavLink-module__icon__ltGNM" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M10.586 1C12.268 1 13.5 2.37 13.5 4.25c0 1.745-.996 3.359-2.622 4.831-.166.15-.336.297-.509.438l1.116 5.584a.75.75 0 0 1-.991.852l-2.409-.876a.25.25 0 0 0-.17 0l-2.409.876a.75.75 0 0 1-.991-.852L5.63 9.519a13.78 13.78 0 0 1-.51-.438C3.497 7.609 2.5 5.995 2.5 4.25 2.5 2.37 3.732 1 5.414 1c.963 0 1.843.403 2.474 1.073L8 2.198l.112-.125a3.385 3.385 0 0 1 2.283-1.068L10.586 1Zm-3.621 9.495-.718 3.594 1.155-.42a1.75 1.75 0 0 1 1.028-.051l.168.051 1.154.42-.718-3.592c-.199.13-.37.235-.505.314l-.169.097a.75.75 0 0 1-.72 0 9.54 9.54 0 0 1-.515-.308l-.16-.105ZM10.586 2.5c-.863 0-1.611.58-1.866 1.459-.209.721-1.231.721-1.44 0C7.025 3.08 6.277 2.5 5.414 2.5 4.598 2.5 4 3.165 4 4.25c0 1.23.786 2.504 2.128 3.719.49.443 1.018.846 1.546 1.198l.325.21.076-.047.251-.163a13.341 13.341 0 0 0 1.546-1.198C11.214 6.754 12 5.479 12 4.25c0-1.085-.598-1.75-1.414-1.75Z"></path></svg>GitHub Sponsors</span><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--muted___rE6mh Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS NavLink-module__subtitle__X4gkW">Fund open source developers</span></span></a></li></ul></div></li><li><div class="NavGroup-module__group__W8SqJ"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--monospace___QXHDQ Primer_Brand__Text-module__Text--muted___rE6mh Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Text-module__Text--weight-medium___qJKf_ NavGroup-module__title__Wzxz2" id="_R_9m7d_">PROGRAMS</span><ul class="NavGroup-module__list__UCOFy" aria-labelledby="_R_9m7d_"><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0 Primer_Brand__Link-module__Link--is-external___xsncV" href="https://securitylab.github.com" data-analytics-event="{"action":"security_lab","tag":"link","context":"open_source","location":"navbar","label":"security_lab_link_open_source_navbar"}" target="_blank" rel="noreferrer"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">Security Lab</span><svg focusable="false" aria-label="External link" class="octicon octicon-link-external" role="img" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M3.75 2h3.5a.75.75 0 0 1 0 1.5h-3.5a.25.25 0 0 0-.25.25v8.5c0 .138.112.25.25.25h8.5a.25.25 0 0 0 .25-.25v-3.5a.75.75 0 0 1 1.5 0v3.5A1.75 1.75 0 0 1 12.25 14h-8.5A1.75 1.75 0 0 1 2 12.25v-8.5C2 2.784 2.784 2 3.75 2Zm6.854-1h4.146a.25.25 0 0 1 .25.25v4.146a.25.25 0 0 1-.427.177L13.03 4.03 9.28 7.78a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042l3.75-3.75-1.543-1.543A.25.25 0 0 1 10.604 1Z"></path></svg></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0 Primer_Brand__Link-module__Link--is-external___xsncV" href="https://maintainers.github.com" data-analytics-event="{"action":"maintainer_community","tag":"link","context":"open_source","location":"navbar","label":"maintainer_community_link_open_source_navbar"}" target="_blank" rel="noreferrer"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">Maintainer Community</span><svg focusable="false" aria-label="External link" class="octicon octicon-link-external" role="img" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M3.75 2h3.5a.75.75 0 0 1 0 1.5h-3.5a.25.25 0 0 0-.25.25v8.5c0 .138.112.25.25.25h8.5a.25.25 0 0 0 .25-.25v-3.5a.75.75 0 0 1 1.5 0v3.5A1.75 1.75 0 0 1 12.25 14h-8.5A1.75 1.75 0 0 1 2 12.25v-8.5C2 2.784 2.784 2 3.75 2Zm6.854-1h4.146a.25.25 0 0 1 .25.25v4.146a.25.25 0 0 1-.427.177L13.03 4.03 9.28 7.78a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042l3.75-3.75-1.543-1.543A.25.25 0 0 1 10.604 1Z"></path></svg></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0 Primer_Brand__Link-module__Link--is-external___xsncV" href="https://stars.github.com" data-analytics-event="{"action":"github_stars","tag":"link","context":"open_source","location":"navbar","label":"github_stars_link_open_source_navbar"}" target="_blank" rel="noreferrer"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">GitHub Stars</span><svg focusable="false" aria-label="External link" class="octicon octicon-link-external" role="img" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M3.75 2h3.5a.75.75 0 0 1 0 1.5h-3.5a.25.25 0 0 0-.25.25v8.5c0 .138.112.25.25.25h8.5a.25.25 0 0 0 .25-.25v-3.5a.75.75 0 0 1 1.5 0v3.5A1.75 1.75 0 0 1 12.25 14h-8.5A1.75 1.75 0 0 1 2 12.25v-8.5C2 2.784 2.784 2 3.75 2Zm6.854-1h4.146a.25.25 0 0 1 .25.25v4.146a.25.25 0 0 1-.427.177L13.03 4.03 9.28 7.78a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042l3.75-3.75-1.543-1.543A.25.25 0 0 1 10.604 1Z"></path></svg></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0 Primer_Brand__Link-module__Link--is-external___xsncV" href="https://archiveprogram.github.com" data-analytics-event="{"action":"archive_program","tag":"link","context":"open_source","location":"navbar","label":"archive_program_link_open_source_navbar"}" target="_blank" rel="noreferrer"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">Archive Program</span><svg focusable="false" aria-label="External link" class="octicon octicon-link-external" role="img" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M3.75 2h3.5a.75.75 0 0 1 0 1.5h-3.5a.25.25 0 0 0-.25.25v8.5c0 .138.112.25.25.25h8.5a.25.25 0 0 0 .25-.25v-3.5a.75.75 0 0 1 1.5 0v3.5A1.75 1.75 0 0 1 12.25 14h-8.5A1.75 1.75 0 0 1 2 12.25v-8.5C2 2.784 2.784 2 3.75 2Zm6.854-1h4.146a.25.25 0 0 1 .25.25v4.146a.25.25 0 0 1-.427.177L13.03 4.03 9.28 7.78a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042l3.75-3.75-1.543-1.543A.25.25 0 0 1 10.604 1Z"></path></svg></a></li></ul></div></li><li><div class="NavGroup-module__group__W8SqJ"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--monospace___QXHDQ Primer_Brand__Text-module__Text--muted___rE6mh Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Text-module__Text--weight-medium___qJKf_ NavGroup-module__title__Wzxz2" id="_R_dm7d_">REPOSITORIES</span><ul class="NavGroup-module__list__UCOFy" aria-labelledby="_R_dm7d_"><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://github.com/topics" data-analytics-event="{"action":"topics","tag":"link","context":"open_source","location":"navbar","label":"topics_link_open_source_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">Topics</span></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://github.com/trending" data-analytics-event="{"action":"trending","tag":"link","context":"open_source","location":"navbar","label":"trending_link_open_source_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">Trending</span></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://github.com/collections" data-analytics-event="{"action":"collections","tag":"link","context":"open_source","location":"navbar","label":"collections_link_open_source_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty">Collections</span></a></li></ul></div></li></ul></div></div></li><li><div class="NavDropdown-module__container__l2YeI"><button type="button" class="NavDropdown-module__button__PEHWX" aria-expanded="false" aria-controls="_R_2nd_">Enterprise<svg data-component="Octicon" aria-hidden="true" focusable="false" class="octicon octicon-triangle-right NavDropdown-module__buttonIcon__Tkl8_" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="m6.427 4.427 3.396 3.396a.25.25 0 0 1 0 .354l-3.396 3.396A.25.25 0 0 1 6 11.396V4.604a.25.25 0 0 1 .427-.177Z"></path></svg></button><div id="_R_2nd_" class="NavDropdown-module__dropdown__xm1jd"><ul class="NavDropdown-module__list__zuCgG"><li><div class="NavGroup-module__group__W8SqJ"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--monospace___QXHDQ Primer_Brand__Text-module__Text--muted___rE6mh Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Text-module__Text--weight-medium___qJKf_ NavGroup-module__title__Wzxz2" id="_R_5mnd_">ENTERPRISE SOLUTIONS</span><ul class="NavGroup-module__list__UCOFy" aria-labelledby="_R_5mnd_"><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0 NavLink-module__link__EG3d4" href="https://github.com/enterprise" data-analytics-event="{"action":"enterprise_platform","tag":"link","context":"enterprise","location":"navbar","label":"enterprise_platform_link_enterprise_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Text-module__Text--weight-medium___qJKf_ NavLink-module__title__Q7t0p"><svg data-component="Octicon" aria-hidden="true" focusable="false" class="octicon octicon-stack NavLink-module__icon__ltGNM" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M7.122.392a1.75 1.75 0 0 1 1.756 0l5.003 2.902c.83.481.83 1.68 0 2.162L8.878 8.358a1.75 1.75 0 0 1-1.756 0L2.119 5.456a1.251 1.251 0 0 1 0-2.162ZM8.125 1.69a.248.248 0 0 0-.25 0l-4.63 2.685 4.63 2.685a.248.248 0 0 0 .25 0l4.63-2.685ZM1.601 7.789a.75.75 0 0 1 1.025-.273l5.249 3.044a.248.248 0 0 0 .25 0l5.249-3.044a.75.75 0 0 1 .752 1.298l-5.248 3.044a1.75 1.75 0 0 1-1.756 0L1.874 8.814A.75.75 0 0 1 1.6 7.789Zm0 3.5a.75.75 0 0 1 1.025-.273l5.249 3.044a.248.248 0 0 0 .25 0l5.249-3.044a.75.75 0 0 1 .752 1.298l-5.248 3.044a1.75 1.75 0 0 1-1.756 0l-5.248-3.044a.75.75 0 0 1-.273-1.025Z"></path></svg>Enterprise platform</span><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--muted___rE6mh Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS NavLink-module__subtitle__X4gkW">AI-powered developer platform</span></span></a></li></ul></div></li><li><div class="NavGroup-module__group__W8SqJ"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--monospace___QXHDQ Primer_Brand__Text-module__Text--muted___rE6mh Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Text-module__Text--weight-medium___qJKf_ NavGroup-module__title__Wzxz2" id="_R_9mnd_">AVAILABLE ADD-ONS</span><ul class="NavGroup-module__list__UCOFy" aria-labelledby="_R_9mnd_"><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0 NavLink-module__link__EG3d4" href="https://github.com/security/advanced-security" data-analytics-event="{"action":"github_advanced_security","tag":"link","context":"enterprise","location":"navbar","label":"github_advanced_security_link_enterprise_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Text-module__Text--weight-medium___qJKf_ NavLink-module__title__Q7t0p"><svg data-component="Octicon" aria-hidden="true" focusable="false" class="octicon octicon-shield-check NavLink-module__icon__ltGNM" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="m8.533.133 5.25 1.68A1.75 1.75 0 0 1 15 3.48V7c0 1.566-.32 3.182-1.303 4.682-.983 1.498-2.585 2.813-5.032 3.855a1.697 1.697 0 0 1-1.33 0c-2.447-1.042-4.049-2.357-5.032-3.855C1.32 10.182 1 8.566 1 7V3.48a1.75 1.75 0 0 1 1.217-1.667l5.25-1.68a1.748 1.748 0 0 1 1.066 0Zm-.61 1.429.001.001-5.25 1.68a.251.251 0 0 0-.174.237V7c0 1.36.275 2.666 1.057 3.859.784 1.194 2.121 2.342 4.366 3.298a.196.196 0 0 0 .154 0c2.245-.957 3.582-2.103 4.366-3.297C13.225 9.666 13.5 8.358 13.5 7V3.48a.25.25 0 0 0-.174-.238l-5.25-1.68a.25.25 0 0 0-.153 0ZM11.28 6.28l-3.5 3.5a.75.75 0 0 1-1.06 0l-1.5-1.5a.749.749 0 0 1 .326-1.275.749.749 0 0 1 .734.215l.97.97 2.97-2.97a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042Z"></path></svg>GitHub Advanced Security</span><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--muted___rE6mh Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS NavLink-module__subtitle__X4gkW">Enterprise-grade security features</span></span></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0 NavLink-module__link__EG3d4" href="https://github.com/features/copilot/copilot-business" data-analytics-event="{"action":"copilot_for_business","tag":"link","context":"enterprise","location":"navbar","label":"copilot_for_business_link_enterprise_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Text-module__Text--weight-medium___qJKf_ NavLink-module__title__Q7t0p"><svg data-component="Octicon" aria-hidden="true" focusable="false" class="octicon octicon-copilot NavLink-module__icon__ltGNM" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M7.998 15.035c-4.562 0-7.873-2.914-7.998-3.749V9.338c.085-.628.677-1.686 1.588-2.065.013-.07.024-.143.036-.218.029-.183.06-.384.126-.612-.201-.508-.254-1.084-.254-1.656 0-.87.128-1.769.693-2.484.579-.733 1.494-1.124 2.724-1.261 1.206-.134 2.262.034 2.944.765.05.053.096.108.139.165.044-.057.094-.112.143-.165.682-.731 1.738-.899 2.944-.765 1.23.137 2.145.528 2.724 1.261.566.715.693 1.614.693 2.484 0 .572-.053 1.148-.254 1.656.066.228.098.429.126.612.012.076.024.148.037.218.924.385 1.522 1.471 1.591 2.095v1.872c0 .766-3.351 3.795-8.002 3.795Zm0-1.485c2.28 0 4.584-1.11 5.002-1.433V7.862l-.023-.116c-.49.21-1.075.291-1.727.291-1.146 0-2.059-.327-2.71-.991A3.222 3.222 0 0 1 8 6.303a3.24 3.24 0 0 1-.544.743c-.65.664-1.563.991-2.71.991-.652 0-1.236-.081-1.727-.291l-.023.116v4.255c.419.323 2.722 1.433 5.002 1.433ZM6.762 2.83c-.193-.206-.637-.413-1.682-.297-1.019.113-1.479.404-1.713.7-.247.312-.369.789-.369 1.554 0 .793.129 1.171.308 1.371.162.181.519.379 1.442.379.853 0 1.339-.235 1.638-.54.315-.322.527-.827.617-1.553.117-.935-.037-1.395-.241-1.614Zm4.155-.297c-1.044-.116-1.488.091-1.681.297-.204.219-.359.679-.242 1.614.091.726.303 1.231.618 1.553.299.305.784.54 1.638.54.922 0 1.28-.198 1.442-.379.179-.2.308-.578.308-1.371 0-.765-.123-1.242-.37-1.554-.233-.296-.693-.587-1.713-.7Z"></path><path d="M6.25 9.037a.75.75 0 0 1 .75.75v1.501a.75.75 0 0 1-1.5 0V9.787a.75.75 0 0 1 .75-.75Zm4.25.75v1.501a.75.75 0 0 1-1.5 0V9.787a.75.75 0 0 1 1.5 0Z"></path></svg>Copilot for Business</span><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--muted___rE6mh Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS NavLink-module__subtitle__X4gkW">Enterprise-grade AI features</span></span></a></li><li><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0 NavLink-module__link__EG3d4" href="https://github.com/enterprise/premium-support" data-analytics-event="{"action":"premium_support","tag":"link","context":"enterprise","location":"navbar","label":"premium_support_link_enterprise_navbar"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Link-module__Link--label___jM8Ty"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Primer_Brand__Text-module__Text--weight-medium___qJKf_ NavLink-module__title__Q7t0p"><svg data-component="Octicon" aria-hidden="true" focusable="false" class="octicon octicon-comment-discussion NavLink-module__icon__ltGNM" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M1.75 1h8.5c.966 0 1.75.784 1.75 1.75v5.5A1.75 1.75 0 0 1 10.25 10H7.061l-2.574 2.573A1.458 1.458 0 0 1 2 11.543V10h-.25A1.75 1.75 0 0 1 0 8.25v-5.5C0 1.784.784 1 1.75 1ZM1.5 2.75v5.5c0 .138.112.25.25.25h1a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.749.749 0 0 1 .53-.22h3.5a.25.25 0 0 0 .25-.25v-5.5a.25.25 0 0 0-.25-.25h-8.5a.25.25 0 0 0-.25.25Zm13 2a.25.25 0 0 0-.25-.25h-.5a.75.75 0 0 1 0-1.5h.5c.966 0 1.75.784 1.75 1.75v5.5A1.75 1.75 0 0 1 14.25 12H14v1.543a1.458 1.458 0 0 1-2.487 1.03L9.22 12.28a.749.749 0 0 1 .326-1.275.749.749 0 0 1 .734.215l2.22 2.22v-2.19a.75.75 0 0 1 .75-.75h1a.25.25 0 0 0 .25-.25Z"></path></svg>Premium Support</span><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--muted___rE6mh Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS NavLink-module__subtitle__X4gkW">Enterprise-grade 24/7 support</span></span></a></li></ul></div></li></ul></div></div></li><li><a href="https://github.com/pricing" data-analytics-event="{"action":"pricing","tag":"link","context":"pricing","location":"navbar","label":"pricing_link_pricing_navbar"}" class="MarketingNavigation-module__navLink__hUomM">Pricing</a></li></ul></nav><div class="MarketingHeader-module__ctaContainer__tBmPz"><div class="HeaderSearch-module__searchSlot__oVOUS"><button class="Primer_Brand__Button-module__Button___scH9Z Primer_Brand__Button-module__Button--subtle___F7pEE Primer_Brand__Button-module__Button--size-small___zQrEw HeaderSearch-module__trigger__zsF9q" type="button" aria-haspopup="dialog" aria-expanded="false" aria-label="Search or jump to, type / to search" data-analytics-event="{"action":"searchbar","tag":"input","context":"global","location":"navbar","label":"searchbar_input_global_navbar"}"><span class="Primer_Brand__Button-module__Button__text___ED0bX"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Text-module__Text--weight-medium___qJKf_ Primer_Brand__Button-module__Button--label___qrkyz Primer_Brand__Button-module__Button--label-subtle___8ndWH"><span class="HeaderSearch-module__content__kMpxU"><svg data-component="Octicon" aria-hidden="true" focusable="false" class="octicon octicon-search HeaderSearch-module__icon__wcrHX" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M10.68 11.74a6 6 0 0 1-7.922-8.982 6 6 0 0 1 8.982 7.922l3.04 3.04a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215ZM11.5 7a4.499 4.499 0 1 0-8.997 0A4.499 4.499 0 0 0 11.5 7Z"></path></svg><span class="HeaderSearch-module__label__d1iWG">Search</span><kbd class="HeaderSearch-module__kbd__HNG0o" aria-hidden="true">/</kbd></span></span></span></button><div class="d-none"></div></div><div class="AuthCTAs-module__signInWrap__q2P60"><a class="Primer_Brand__Button-module__Button___scH9Z Primer_Brand__Button-module__Button--subtle___F7pEE Primer_Brand__Button-module__Button--size-small___zQrEw AuthCTAs-module__cta__WpwQq AuthCTAs-module__desktopActionGap__UZuXT AuthCTAs-module__hiddenBelowLg__BfKBw" href="/login?return_to=https%3A%2F%2Fgithub.com%2Freadme%2Fguides%2Fstaff-engineers" data-analytics-event="{"action":"sign_in","tag":"link","context":"auth_cta","location":"header","label":"sign_in_link_auth_cta_header"}" data-hydro-click="{"event_type":"authentication.click","payload":{"location_in_page":"site header menu","repository_id":null,"auth_type":"SIGN_UP","originating_url":"https://github.com/readme/guides/staff-engineers","user_id":null}}" data-hydro-click-hmac="d60eecaca40837c180be58a31b3a67a778cf89df28714316d04a6cffa7423da0"><span class="Primer_Brand__Button-module__Button__text___ED0bX"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Text-module__Text--weight-medium___qJKf_ Primer_Brand__Button-module__Button--label___qrkyz Primer_Brand__Button-module__Button--label-subtle___8ndWH">Sign in</span></span></a></div><a class="Primer_Brand__Button-module__Button___scH9Z Primer_Brand__Button-module__Button--secondary___gHnw_ Primer_Brand__Button-module__Button--size-small___zQrEw AuthCTAs-module__cta__WpwQq" href="/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2Freadme%2Fguides%2Fstaff-engineers&source=header" data-analytics-event="{"action":"sign_up","tag":"link","context":"auth_cta","location":"header","label":"sign_up_link_auth_cta_header"}" data-hydro-click="{"event_type":"authentication.click","payload":{"location_in_page":"site header menu","repository_id":null,"auth_type":"SIGN_UP","originating_url":"https://github.com/readme/guides/staff-engineers","user_id":null}}" data-hydro-click-hmac="d60eecaca40837c180be58a31b3a67a778cf89df28714316d04a6cffa7423da0"><span class="Primer_Brand__Button-module__Button__text___ED0bX"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Text-module__Text--weight-medium___qJKf_ Primer_Brand__Button-module__Button--label___qrkyz Primer_Brand__Button-module__Button--label-secondary___eJ0_a">Sign up</span></span></a></div></div></div></div></header></div></div>
|
||
</react-partial>
|
||
|
||
|
||
|
||
<div hidden="hidden" data-view-component="true" class="js-stale-session-flash stale-session-flash flash flash-warn flash-full">
|
||
|
||
<svg aria-hidden="true" data-component="Octicon" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-alert">
|
||
<path d="M6.457 1.047c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0 1 14.082 15H1.918a1.75 1.75 0 0 1-1.543-2.575Zm1.763.707a.25.25 0 0 0-.44 0L1.698 13.132a.25.25 0 0 0 .22.368h12.164a.25.25 0 0 0 .22-.368Zm.53 3.996v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"></path>
|
||
</svg>
|
||
<span class="js-stale-session-flash-signed-in" hidden>You signed in with another tab or window. <a class="Link--inTextBlock" href="">Reload</a> to refresh your session.</span>
|
||
<span class="js-stale-session-flash-signed-out" hidden>You signed out in another tab or window. <a class="Link--inTextBlock" href="">Reload</a> to refresh your session.</span>
|
||
<span class="js-stale-session-flash-switched" hidden>You switched accounts on another tab or window. <a class="Link--inTextBlock" href="">Reload</a> to refresh your session.</span>
|
||
|
||
<button id="icon-button-2868fe72-b251-43ce-810d-9b983af18a79" aria-labelledby="tooltip-38c249d5-f50e-4d1e-a748-bcf1db509ea9" type="button" data-view-component="true" class="Button Button--iconOnly Button--invisible Button--medium flash-close js-flash-close"> <svg aria-hidden="true" data-component="Octicon" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-x Button-visual">
|
||
<path d="M3.72 3.72a.75.75 0 0 1 1.06 0L8 6.94l3.22-3.22a.749.749 0 0 1 1.275.326.749.749 0 0 1-.215.734L9.06 8l3.22 3.22a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215L8 9.06l-3.22 3.22a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L6.94 8 3.72 4.78a.75.75 0 0 1 0-1.06Z"></path>
|
||
</svg>
|
||
</button><tool-tip id="tooltip-38c249d5-f50e-4d1e-a748-bcf1db509ea9" for="icon-button-2868fe72-b251-43ce-810d-9b983af18a79" popover="manual" data-direction="s" data-type="label" data-view-component="true" class="sr-only position-absolute">Dismiss alert</tool-tip>
|
||
|
||
|
||
|
||
</div>
|
||
</div>
|
||
|
||
<div id="start-of-content" class="show-on-focus"></div>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<div id="js-flash-container" class="flash-container" data-turbo-replace>
|
||
|
||
|
||
|
||
|
||
|
||
<template class="js-flash-template">
|
||
|
||
<div class="flash flash-full {{ className }}">
|
||
<div >
|
||
<button autofocus class="flash-close js-flash-close" type="button" aria-label="Dismiss this message">
|
||
<svg aria-hidden="true" data-component="Octicon" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-x">
|
||
<path d="M3.72 3.72a.75.75 0 0 1 1.06 0L8 6.94l3.22-3.22a.749.749 0 0 1 1.275.326.749.749 0 0 1-.215.734L9.06 8l3.22 3.22a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215L8 9.06l-3.22 3.22a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L6.94 8 3.72 4.78a.75.75 0 0 1 0-1.06Z"></path>
|
||
</svg>
|
||
</button>
|
||
<div aria-atomic="true" role="alert" class="js-flash-alert">
|
||
|
||
<div>{{ message }}</div>
|
||
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</template>
|
||
</div>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<div
|
||
class="application-main "
|
||
data-commit-hovercards-enabled
|
||
data-discussion-hovercards-enabled
|
||
data-issue-and-pr-hovercards-enabled
|
||
data-project-hovercards-enabled
|
||
>
|
||
<main class="font-mktg " >
|
||
|
||
|
||
|
||
<div class="js-details-container">
|
||
|
||
<div class="position-relative d-flex width-full overflow-hidden js-build-in" data-build-margin-bottom="45">
|
||
<div class="position-absolute top-0 right-0 left-0 readme-hero--guides__background" style="background-color:#194BCD"></div>
|
||
|
||
<div class="position-relative d-flex flex-column-reverse flex-lg-row flex-justify-between container-readme mx-auto">
|
||
<div class="position-relative col-lg-6 d-flex flex-column flex-justify-center p-responsive-readme tmp-mt-6 tmp-mt-lg-n2 tmp-mb-6 tmp-mb-lg-12 tmp-mb-xl-9 readme-hero__text">
|
||
<div class="width-full height-full d-flex flex-column flex-justify-center tmp-pt-lg-12">
|
||
<div class="tmp-mb-4 tmp-mb-md-6 tmp-mb-xl-9">
|
||
<a href="/readme" aria-label="ReadME Project Homepage" class="readme-logo-link--inverted">
|
||
<svg xmlns="http://www.w3.org/2000/svg" width="137" height="50" viewBox="0 0 137 52" fill="currentColor" aria-hidden="true" class="d-block readme-logo">
|
||
<path d="M74 31.097h1.784v-4.52h5.779v4.52h1.8v-4.175c0-.773-.278-1.282-1.178-1.282h-.606v-.115c1.048-.378 1.752-1.413 1.752-2.86 0-2.153-1.13-3.55-3.504-3.55H74v11.982zm1.784-6.016v-4.405h3.65c1.212 0 1.998.543 1.998 1.693v1.003c0 1.019-.704 1.71-1.997 1.71h-3.65zM85.073 26.758c0 2.744 1.523 4.503 4.093 4.503 2.03 0 3.568-1.118 3.912-2.794h-1.67c-.261.855-1.08 1.446-2.226 1.446-1.424 0-2.373-.92-2.373-2.284v-.477h6.17a8.99 8.99 0 00.066-.937c0-2.449-1.555-3.928-3.895-3.928-2.489 0-4.077 1.644-4.077 4.47zm1.736-.822v-.197c0-1.25.95-2.104 2.324-2.104 1.326 0 2.21.822 2.21 2.021v.28h-4.534zM94.392 28.615c0 1.594 1.032 2.646 2.75 2.646 1.392 0 2.505-.624 2.865-1.561h.115l.016.41c.049.625.328.987 1.228.987h1.555v-1.233h-1.211v-4.52c0-.937-.41-3.057-3.372-3.057-2.112 0-3.487 1.02-3.602 2.827h1.67c.049-.904.655-1.48 1.85-1.48 1.047 0 1.768.445 1.768 1.677v.625h-2.505c-1.915 0-3.127.97-3.127 2.679zm1.72-.362c0-.674.572-1.15 1.62-1.15h2.292v.41c0 1.43-.917 2.4-2.407 2.4-.9 0-1.506-.394-1.506-1.2v-.46zM107.489 31.261c1.358 0 2.471-.608 3.028-1.693h.114l.197 1.529h1.506V19h-1.703v5.079h-.114c-.508-1.036-1.555-1.677-3.028-1.677-2.21 0-3.536 1.595-3.536 4.438 0 2.794 1.309 4.421 3.536 4.421zm.54-1.397c-1.506 0-2.341-.887-2.341-2.219v-1.627c0-1.38.9-2.219 2.341-2.219 1.555 0 2.602 1.003 2.602 2.548v.97c0 1.528-1.031 2.547-2.602 2.547zM114.377 31.097h1.752v-6.098l-.148-3.484h.115l4.207 9.368 4.19-9.368h.099l-.131 3.468v6.114h1.735V19.115h-2.308l-3.552 8.152h-.099l-3.536-8.152h-2.324v11.982zM128.489 31.097h8.054v-1.595h-6.269v-3.83h5.483v-1.511h-5.483v-3.452h6.269v-1.594h-8.054v11.982zM74 49.097h1.784V44.84h3.503c2.488 0 3.814-1.447 3.814-3.863 0-2.366-1.244-3.862-3.814-3.862H74v11.982zm1.784-5.786V38.76h3.52c1.146 0 1.915.575 1.915 1.643v1.134c0 1.036-.72 1.775-2.063 1.775h-3.372zM86.37 40.452c-1.309 0-1.489.805-1.489 1.479v7.166h1.686v-7.232h2.783v-1.413h-2.98zM89.853 44.774c0 2.761 1.588 4.487 4.174 4.487 2.636 0 4.175-1.792 4.175-4.487 0-2.86-1.736-4.487-4.175-4.487-2.52 0-4.174 1.677-4.174 4.487zm1.719.707v-1.348c0-1.48.999-2.416 2.455-2.416 1.408 0 2.44.937 2.44 2.416v1.348c0 1.545-1.064 2.367-2.44 2.367-1.358 0-2.455-.806-2.455-2.367zM100.327 37v2.038h1.686V37h-1.686zm0 3.452v10.025h-1.85v1.364h2.03c1.489 0 1.489-1.084 1.489-1.495v-1.71l.017-8.184h-1.686zM103.889 44.758c0 2.744 1.522 4.503 4.092 4.503 2.03 0 3.569-1.118 3.912-2.794h-1.669c-.262.855-1.081 1.446-2.226 1.446-1.425 0-2.374-.92-2.374-2.284v-.477h6.171c.033-.28.066-.657.066-.937 0-2.449-1.555-3.928-3.896-3.928-2.488 0-4.076 1.644-4.076 4.47zm1.735-.822v-.197c0-1.25.949-2.104 2.324-2.104 1.326 0 2.21.822 2.21 2.022v.279h-4.534zM121.389 46.089h-1.67c-.196 1.085-1.031 1.759-2.226 1.759-1.408 0-2.374-.888-2.374-2.334v-1.348c0-1.446.933-2.449 2.374-2.449 1.08 0 1.931.526 2.193 1.644h1.686c-.278-1.858-1.751-3.074-3.814-3.074-2.472 0-4.158 1.627-4.158 4.504 0 2.728 1.523 4.47 4.109 4.47 2.128 0 3.618-1.2 3.88-3.172zM125.422 41.865h1.784v-1.413h-1.784V37.64h-1.669v2.81h-1.556v1.414h1.556V47.7c0 .838.36 1.397 1.424 1.397h2.029v-1.38h-1.784v-5.852z"></path>
|
||
<path fill-rule="evenodd" clip-rule="evenodd" d="M4 23C4 9.5 15 0 32 0v9c-8 0-15 3.5-15 14h13v26h-8v-4h-4v4h-3v-4h-4v-4H7v4h4v4H4V33h4v-4H4v-6zm10 12h4v4h-4v-4z"></path>
|
||
<path d="M4 29H0v4h4v-4z"></path>
|
||
<path fill-rule="evenodd" clip-rule="evenodd" d="M36 23C36 9.5 47 0 64 0v9c-8 0-15 3.5-15 14h13v18h4v4h-4v4h-5v-4h4v-4h-4v4h-4v4H43v-4h4v-4h-4v-4h-4v4h4v4h-4v4h-3V23zm15 13v-4h-4v4h4z"></path>
|
||
<path d="M81.97 1.115H73V2.71h3.601v10.388h1.768V2.709h3.602V1.115zM83.388 13.097h1.686V8.51c0-1.676.933-2.794 2.373-2.794 1.212 0 1.9.723 1.9 2.252v5.128h1.702V7.804c0-2.136-1.065-3.517-2.98-3.517-1.276 0-2.34.641-2.88 1.742h-.115V1h-1.686v12.097zM92.113 8.758c0 2.744 1.523 4.503 4.093 4.503 2.03 0 3.568-1.118 3.912-2.794h-1.67c-.262.855-1.08 1.446-2.226 1.446-1.424 0-2.373-.92-2.373-2.284v-.477h6.171c.033-.28.065-.657.065-.937 0-2.449-1.555-3.928-3.896-3.928-2.488 0-4.076 1.644-4.076 4.47zm1.736-.822v-.197c0-1.25.949-2.104 2.324-2.104 1.326 0 2.21.822 2.21 2.021v.28h-4.534z"></path>
|
||
</svg>
|
||
</a>
|
||
</div>
|
||
|
||
<h1 class="tmp-mb-6 color-text-white readme-heading-1 readme-heading--condensed">
|
||
How to put the plus in ‘staff+’ engineer
|
||
</h1>
|
||
|
||
<p class="col-xl-11 tmp-mb-lg-6 readme-subheading fgColor-onEmphasis">
|
||
Whether you’re already a staff+ engineer or you’re looking to advance, here’s how to be a force multiplier for your teams and organization
|
||
</p>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="position-relative col-lg-6 readme-hero__img">
|
||
<picture class="d-flex">
|
||
|
||
<source srcset="//images.ctfassets.net/s5uo95nf6njh/6nzhAjZloiCd0NvcpnijYB/860370bf8b687ab50d5be13bd21f8f81/DevOps_IMG_1394__1___1_.jpg?w=1200&fm=webp 1200w,//images.ctfassets.net/s5uo95nf6njh/6nzhAjZloiCd0NvcpnijYB/860370bf8b687ab50d5be13bd21f8f81/DevOps_IMG_1394__1___1_.jpg?w=960&fm=webp 960w,//images.ctfassets.net/s5uo95nf6njh/6nzhAjZloiCd0NvcpnijYB/860370bf8b687ab50d5be13bd21f8f81/DevOps_IMG_1394__1___1_.jpg?w=720&fm=webp 720w,//images.ctfassets.net/s5uo95nf6njh/6nzhAjZloiCd0NvcpnijYB/860370bf8b687ab50d5be13bd21f8f81/DevOps_IMG_1394__1___1_.jpg?w=600&fm=webp 600w,//images.ctfassets.net/s5uo95nf6njh/6nzhAjZloiCd0NvcpnijYB/860370bf8b687ab50d5be13bd21f8f81/DevOps_IMG_1394__1___1_.jpg?w=480&fm=webp 480w,//images.ctfassets.net/s5uo95nf6njh/6nzhAjZloiCd0NvcpnijYB/860370bf8b687ab50d5be13bd21f8f81/DevOps_IMG_1394__1___1_.jpg?w=240&fm=webp 240w" sizes="(max-width: 755px) 100vw, 45vw" type="image/webp"></source>
|
||
<source srcset="//images.ctfassets.net/s5uo95nf6njh/6nzhAjZloiCd0NvcpnijYB/860370bf8b687ab50d5be13bd21f8f81/DevOps_IMG_1394__1___1_.jpg?w=1200&fm=jpg 1200w,//images.ctfassets.net/s5uo95nf6njh/6nzhAjZloiCd0NvcpnijYB/860370bf8b687ab50d5be13bd21f8f81/DevOps_IMG_1394__1___1_.jpg?w=960&fm=jpg 960w,//images.ctfassets.net/s5uo95nf6njh/6nzhAjZloiCd0NvcpnijYB/860370bf8b687ab50d5be13bd21f8f81/DevOps_IMG_1394__1___1_.jpg?w=720&fm=jpg 720w,//images.ctfassets.net/s5uo95nf6njh/6nzhAjZloiCd0NvcpnijYB/860370bf8b687ab50d5be13bd21f8f81/DevOps_IMG_1394__1___1_.jpg?w=600&fm=jpg 600w,//images.ctfassets.net/s5uo95nf6njh/6nzhAjZloiCd0NvcpnijYB/860370bf8b687ab50d5be13bd21f8f81/DevOps_IMG_1394__1___1_.jpg?w=480&fm=jpg 480w,//images.ctfassets.net/s5uo95nf6njh/6nzhAjZloiCd0NvcpnijYB/860370bf8b687ab50d5be13bd21f8f81/DevOps_IMG_1394__1___1_.jpg?w=240&fm=jpg 240w" sizes="(max-width: 755px) 100vw, 45vw" type="image/jpeg"></source>
|
||
<img class="d-block width-full height-full object-fit-cover readme-mask--thumbnail-1" width="1200" height="1400" alt="" src="//images.ctfassets.net/s5uo95nf6njh/6nzhAjZloiCd0NvcpnijYB/860370bf8b687ab50d5be13bd21f8f81/DevOps_IMG_1394__1___1_.jpg?w=1200&fm=jpg" />
|
||
</picture>
|
||
|
||
<p class="position-lg-absolute z-2 bottom-0 right-0 p-responsive-readme tmp-pt-4 tmp-pl-lg-6 pr-xl-0 text-md-right text-mono f6-mktg tmp-mb-6 tmp-mb-lg-0 readme-artist-credit--guides" style="background-color:#194BCD;">
|
||
Artwork: <a target="_blank" rel="noopener" href="http://susanhaejinlee.com">Susan Haejin Lee</a>
|
||
</p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="position-relative z-1 tmp-mt-6 tmp-mb-10 tmp-mb-md-0 readme-bio">
|
||
<div class="container-xl p-responsive">
|
||
<div class="readme-bio-text d-flex flex-items-center">
|
||
<div class="position-relative d-inline-flex flex-items-center flex-justify-center tmp-mr-7 tmp-mr-md-4 tmp-mt-n3 tmp-mb-n3">
|
||
<div class="overflow-hidden circle d-inline-flex flex-items-center flex-justify-center" style="width:120px; height:120px;">
|
||
<picture>
|
||
<source srcset="//images.ctfassets.net/s5uo95nf6njh/3hv07iqM5NWklDu7IwO6kQ/1f856645a5890fa8babaa3235b30dedc/P8062294-crop_-_Ryn_Daniels.jpg?w=240&fm=avif 240w,//images.ctfassets.net/s5uo95nf6njh/3hv07iqM5NWklDu7IwO6kQ/1f856645a5890fa8babaa3235b30dedc/P8062294-crop_-_Ryn_Daniels.jpg?w=192&fm=avif 192w,//images.ctfassets.net/s5uo95nf6njh/3hv07iqM5NWklDu7IwO6kQ/1f856645a5890fa8babaa3235b30dedc/P8062294-crop_-_Ryn_Daniels.jpg?w=144&fm=avif 144w,//images.ctfassets.net/s5uo95nf6njh/3hv07iqM5NWklDu7IwO6kQ/1f856645a5890fa8babaa3235b30dedc/P8062294-crop_-_Ryn_Daniels.jpg?w=120&fm=avif 120w,//images.ctfassets.net/s5uo95nf6njh/3hv07iqM5NWklDu7IwO6kQ/1f856645a5890fa8babaa3235b30dedc/P8062294-crop_-_Ryn_Daniels.jpg?w=96&fm=avif 96w,//images.ctfassets.net/s5uo95nf6njh/3hv07iqM5NWklDu7IwO6kQ/1f856645a5890fa8babaa3235b30dedc/P8062294-crop_-_Ryn_Daniels.jpg?w=48&fm=avif 48w" sizes="120px" type="image/avif"></source>
|
||
<source srcset="//images.ctfassets.net/s5uo95nf6njh/3hv07iqM5NWklDu7IwO6kQ/1f856645a5890fa8babaa3235b30dedc/P8062294-crop_-_Ryn_Daniels.jpg?w=240&fm=webp 240w,//images.ctfassets.net/s5uo95nf6njh/3hv07iqM5NWklDu7IwO6kQ/1f856645a5890fa8babaa3235b30dedc/P8062294-crop_-_Ryn_Daniels.jpg?w=192&fm=webp 192w,//images.ctfassets.net/s5uo95nf6njh/3hv07iqM5NWklDu7IwO6kQ/1f856645a5890fa8babaa3235b30dedc/P8062294-crop_-_Ryn_Daniels.jpg?w=144&fm=webp 144w,//images.ctfassets.net/s5uo95nf6njh/3hv07iqM5NWklDu7IwO6kQ/1f856645a5890fa8babaa3235b30dedc/P8062294-crop_-_Ryn_Daniels.jpg?w=120&fm=webp 120w,//images.ctfassets.net/s5uo95nf6njh/3hv07iqM5NWklDu7IwO6kQ/1f856645a5890fa8babaa3235b30dedc/P8062294-crop_-_Ryn_Daniels.jpg?w=96&fm=webp 96w,//images.ctfassets.net/s5uo95nf6njh/3hv07iqM5NWklDu7IwO6kQ/1f856645a5890fa8babaa3235b30dedc/P8062294-crop_-_Ryn_Daniels.jpg?w=48&fm=webp 48w" sizes="120px" type="image/webp"></source>
|
||
<source srcset="//images.ctfassets.net/s5uo95nf6njh/3hv07iqM5NWklDu7IwO6kQ/1f856645a5890fa8babaa3235b30dedc/P8062294-crop_-_Ryn_Daniels.jpg?w=240&fm=jpg 240w,//images.ctfassets.net/s5uo95nf6njh/3hv07iqM5NWklDu7IwO6kQ/1f856645a5890fa8babaa3235b30dedc/P8062294-crop_-_Ryn_Daniels.jpg?w=192&fm=jpg 192w,//images.ctfassets.net/s5uo95nf6njh/3hv07iqM5NWklDu7IwO6kQ/1f856645a5890fa8babaa3235b30dedc/P8062294-crop_-_Ryn_Daniels.jpg?w=144&fm=jpg 144w,//images.ctfassets.net/s5uo95nf6njh/3hv07iqM5NWklDu7IwO6kQ/1f856645a5890fa8babaa3235b30dedc/P8062294-crop_-_Ryn_Daniels.jpg?w=120&fm=jpg 120w,//images.ctfassets.net/s5uo95nf6njh/3hv07iqM5NWklDu7IwO6kQ/1f856645a5890fa8babaa3235b30dedc/P8062294-crop_-_Ryn_Daniels.jpg?w=96&fm=jpg 96w,//images.ctfassets.net/s5uo95nf6njh/3hv07iqM5NWklDu7IwO6kQ/1f856645a5890fa8babaa3235b30dedc/P8062294-crop_-_Ryn_Daniels.jpg?w=48&fm=jpg 48w" sizes="120px" type="image/jpeg"></source>
|
||
<img class="width-full height-auto d-block" width="240" height="240" alt="Photo of Ryn Daniels" src="//images.ctfassets.net/s5uo95nf6njh/3hv07iqM5NWklDu7IwO6kQ/1f856645a5890fa8babaa3235b30dedc/P8062294-crop_-_Ryn_Daniels.jpg?w=240&fm=jpg" />
|
||
</picture>
|
||
</div>
|
||
|
||
<div class="position-absolute readme-bg-white rounded box-shadow-card-border-mktg" style="transform: translateX(-50%) translateY(-50%); top:100%; left: 100%; width:60px; height:60px; padding: 0.75rem">
|
||
<picture>
|
||
<source srcset="?w=72&fm=avif 72w,?w=57&fm=avif 57w,?w=43&fm=avif 43w,?w=36&fm=avif 36w,?w=28&fm=avif 28w,?w=14&fm=avif 14w" sizes="36px" type="image/avif"></source>
|
||
<source srcset="?w=72&fm=webp 72w,?w=57&fm=webp 57w,?w=43&fm=webp 43w,?w=36&fm=webp 36w,?w=28&fm=webp 28w,?w=14&fm=webp 14w" sizes="36px" type="image/webp"></source>
|
||
<source srcset="?w=72&fm=jpg 72w,?w=57&fm=jpg 57w,?w=43&fm=jpg 43w,?w=36&fm=jpg 36w,?w=28&fm=jpg 28w,?w=14&fm=jpg 14w" sizes="36px" type="image/jpeg"></source>
|
||
<img class="width-full height-auto d-block" width="72" height="72" alt=" logo" src="https://github.githubassets.com/images/?w=72&fm=jpg" />
|
||
</picture>
|
||
</div>
|
||
</div>
|
||
|
||
<p class="mb-0 py-2 tmp-py-md-5">
|
||
<strong class="d-block d-md-inline text-bold">Ryn Daniels</strong><span class="text-mono text-uppercase f5-mktg readme-text-gray-dark" style="letter-spacing:0.05em;"><span class="d-none d-md-inline"> // </span>Principal SRE, </span>
|
||
</p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
<div class="p-responsive-readme container-xl mx-auto tmp-mt-6 tmp-mt-md-10 tmp-pb-md-12">
|
||
<div class="js-build-in" data-build-margin-bottom="75" data-build-non-decorative="true">
|
||
|
||
<div class="color-bg-subtle position-fixed left-0 top-0 width-full z-2 readme-navbar-dropdown">
|
||
<div class="tmp-px-3 tmp-pl-md-8 tmp-pr-lg-6 tmp-py-4 tmp-py-lg-5 d-flex flex-justify-between flex-items-center">
|
||
<a href="/readme" tabindex="" class="d-flex flex-items-center f4-mktg link-blue-readme"><svg xmlns="http://www.w3.org/2000/svg" width="66" height="28" viewBox="0 0 66 49" fill="currentColor">
|
||
<path fill-rule="evenodd" clip-rule="evenodd" d="M4 23C4 9.5 15 0 32 0v9c-8 0-15 3.5-15 14h13v26h-8v-4h-4v4h-3v-4h-4v-4H7v4h4v4H4V33h4v-4H4v-6zm10 12h4v4h-4v-4z"></path>
|
||
<path d="M4 29H0v4h4v-4z"></path>
|
||
<path fill-rule="evenodd" clip-rule="evenodd" d="M36 23C36 9.5 47 0 64 0v9c-8 0-15 3.5-15 14h13v18h4v4h-4v4h-5v-4h4v-4h-4v4h-4v4H43v-4h4v-4h-4v-4h-4v4h4v4h-4v4h-3V23zm15 13v-4h-4v4h4z"></path>
|
||
</svg>The ReadME Project</a>
|
||
|
||
<button id="readme-nav-menu-dropdown" aria-label="Open ReadME Project Menu" data-aria-label-closed="Open ReadME Project Menu" data-aria-label-open="Close ReadME Project Menu" aria-expanded="false" type="button" data-view-component="true" class="no-underline readme-nav__button js-details-target btn-link"> <div class="d-flex flex-items-center">
|
||
<svg height="20" aria-hidden="true" data-component="Octicon" viewBox="0 0 16 16" version="1.1" width="20" data-view-component="true" class="octicon octicon-three-bars">
|
||
<path d="M1 2.75A.75.75 0 0 1 1.75 2h12.5a.75.75 0 0 1 0 1.5H1.75A.75.75 0 0 1 1 2.75Zm0 5A.75.75 0 0 1 1.75 7h12.5a.75.75 0 0 1 0 1.5H1.75A.75.75 0 0 1 1 7.75ZM1.75 12h12.5a.75.75 0 0 1 0 1.5H1.75a.75.75 0 0 1 0-1.5Z"></path>
|
||
</svg>
|
||
</div>
|
||
</button> <tool-tip id="tooltip-fa738a36-0713-4485-8afe-212ffc2066f6" for="readme-nav-menu-dropdown" popover="manual" data-direction="s" data-type="description" data-view-component="true" class="sr-only position-absolute">Open ReadME Project Menu</tool-tip>
|
||
</div>
|
||
</div>
|
||
|
||
<nav class="position-fixed top-0 left-0 width-full height-full overflow-auto color-fg-on-emphasis readme-nav" aria-label="ReadME Project Navigation">
|
||
<div class="position-absolute top-0 right-0 bottom-0 left-0 readme-nav__overlay"></div>
|
||
<div class="position-relative width-full box-shadow-default-mktg readme-bg-black--pattern readme-nav__body">
|
||
<div class="tmp-ml-md-6 border-left readme-border-fade--white d-flex flex-column flex-justify-between" style="min-height:60vh">
|
||
<div class="d-flex flex-items-center flex-justify-between tmp-px-3 tmp-pl-md-8 tmp-pr-lg-6 tmp-py-4 tmp-ml-md-n6 border-bottom readme-border-fade--white">
|
||
<a href="/readme" aria-label="ReadME Project Homepage" class="d-block readme-logo-link--inverted js-details-initial-focus">
|
||
<svg xmlns="http://www.w3.org/2000/svg" width="132" height="50" viewBox="0 0 137 52" fill="currentColor" aria-hidden="true" class="d-block readme-logo">
|
||
<path d="M74 31.097h1.784v-4.52h5.779v4.52h1.8v-4.175c0-.773-.278-1.282-1.178-1.282h-.606v-.115c1.048-.378 1.752-1.413 1.752-2.86 0-2.153-1.13-3.55-3.504-3.55H74v11.982zm1.784-6.016v-4.405h3.65c1.212 0 1.998.543 1.998 1.693v1.003c0 1.019-.704 1.71-1.997 1.71h-3.65zM85.073 26.758c0 2.744 1.523 4.503 4.093 4.503 2.03 0 3.568-1.118 3.912-2.794h-1.67c-.261.855-1.08 1.446-2.226 1.446-1.424 0-2.373-.92-2.373-2.284v-.477h6.17a8.99 8.99 0 00.066-.937c0-2.449-1.555-3.928-3.895-3.928-2.489 0-4.077 1.644-4.077 4.47zm1.736-.822v-.197c0-1.25.95-2.104 2.324-2.104 1.326 0 2.21.822 2.21 2.021v.28h-4.534zM94.392 28.615c0 1.594 1.032 2.646 2.75 2.646 1.392 0 2.505-.624 2.865-1.561h.115l.016.41c.049.625.328.987 1.228.987h1.555v-1.233h-1.211v-4.52c0-.937-.41-3.057-3.372-3.057-2.112 0-3.487 1.02-3.602 2.827h1.67c.049-.904.655-1.48 1.85-1.48 1.047 0 1.768.445 1.768 1.677v.625h-2.505c-1.915 0-3.127.97-3.127 2.679zm1.72-.362c0-.674.572-1.15 1.62-1.15h2.292v.41c0 1.43-.917 2.4-2.407 2.4-.9 0-1.506-.394-1.506-1.2v-.46zM107.489 31.261c1.358 0 2.471-.608 3.028-1.693h.114l.197 1.529h1.506V19h-1.703v5.079h-.114c-.508-1.036-1.555-1.677-3.028-1.677-2.21 0-3.536 1.595-3.536 4.438 0 2.794 1.309 4.421 3.536 4.421zm.54-1.397c-1.506 0-2.341-.887-2.341-2.219v-1.627c0-1.38.9-2.219 2.341-2.219 1.555 0 2.602 1.003 2.602 2.548v.97c0 1.528-1.031 2.547-2.602 2.547zM114.377 31.097h1.752v-6.098l-.148-3.484h.115l4.207 9.368 4.19-9.368h.099l-.131 3.468v6.114h1.735V19.115h-2.308l-3.552 8.152h-.099l-3.536-8.152h-2.324v11.982zM128.489 31.097h8.054v-1.595h-6.269v-3.83h5.483v-1.511h-5.483v-3.452h6.269v-1.594h-8.054v11.982zM74 49.097h1.784V44.84h3.503c2.488 0 3.814-1.447 3.814-3.863 0-2.366-1.244-3.862-3.814-3.862H74v11.982zm1.784-5.786V38.76h3.52c1.146 0 1.915.575 1.915 1.643v1.134c0 1.036-.72 1.775-2.063 1.775h-3.372zM86.37 40.452c-1.309 0-1.489.805-1.489 1.479v7.166h1.686v-7.232h2.783v-1.413h-2.98zM89.853 44.774c0 2.761 1.588 4.487 4.174 4.487 2.636 0 4.175-1.792 4.175-4.487 0-2.86-1.736-4.487-4.175-4.487-2.52 0-4.174 1.677-4.174 4.487zm1.719.707v-1.348c0-1.48.999-2.416 2.455-2.416 1.408 0 2.44.937 2.44 2.416v1.348c0 1.545-1.064 2.367-2.44 2.367-1.358 0-2.455-.806-2.455-2.367zM100.327 37v2.038h1.686V37h-1.686zm0 3.452v10.025h-1.85v1.364h2.03c1.489 0 1.489-1.084 1.489-1.495v-1.71l.017-8.184h-1.686zM103.889 44.758c0 2.744 1.522 4.503 4.092 4.503 2.03 0 3.569-1.118 3.912-2.794h-1.669c-.262.855-1.081 1.446-2.226 1.446-1.425 0-2.374-.92-2.374-2.284v-.477h6.171c.033-.28.066-.657.066-.937 0-2.449-1.555-3.928-3.896-3.928-2.488 0-4.076 1.644-4.076 4.47zm1.735-.822v-.197c0-1.25.949-2.104 2.324-2.104 1.326 0 2.21.822 2.21 2.022v.279h-4.534zM121.389 46.089h-1.67c-.196 1.085-1.031 1.759-2.226 1.759-1.408 0-2.374-.888-2.374-2.334v-1.348c0-1.446.933-2.449 2.374-2.449 1.08 0 1.931.526 2.193 1.644h1.686c-.278-1.858-1.751-3.074-3.814-3.074-2.472 0-4.158 1.627-4.158 4.504 0 2.728 1.523 4.47 4.109 4.47 2.128 0 3.618-1.2 3.88-3.172zM125.422 41.865h1.784v-1.413h-1.784V37.64h-1.669v2.81h-1.556v1.414h1.556V47.7c0 .838.36 1.397 1.424 1.397h2.029v-1.38h-1.784v-5.852z"></path>
|
||
<path fill-rule="evenodd" clip-rule="evenodd" d="M4 23C4 9.5 15 0 32 0v9c-8 0-15 3.5-15 14h13v26h-8v-4h-4v4h-3v-4h-4v-4H7v4h4v4H4V33h4v-4H4v-6zm10 12h4v4h-4v-4z"></path>
|
||
<path d="M4 29H0v4h4v-4z"></path>
|
||
<path fill-rule="evenodd" clip-rule="evenodd" d="M36 23C36 9.5 47 0 64 0v9c-8 0-15 3.5-15 14h13v18h4v4h-4v4h-5v-4h4v-4h-4v4h-4v4H43v-4h4v-4h-4v-4h-4v4h4v4h-4v4h-3V23zm15 13v-4h-4v4h4z"></path>
|
||
<path d="M81.97 1.115H73V2.71h3.601v10.388h1.768V2.709h3.602V1.115zM83.388 13.097h1.686V8.51c0-1.676.933-2.794 2.373-2.794 1.212 0 1.9.723 1.9 2.252v5.128h1.702V7.804c0-2.136-1.065-3.517-2.98-3.517-1.276 0-2.34.641-2.88 1.742h-.115V1h-1.686v12.097zM92.113 8.758c0 2.744 1.523 4.503 4.093 4.503 2.03 0 3.568-1.118 3.912-2.794h-1.67c-.262.855-1.08 1.446-2.226 1.446-1.424 0-2.373-.92-2.373-2.284v-.477h6.171c.033-.28.065-.657.065-.937 0-2.449-1.555-3.928-3.896-3.928-2.488 0-4.076 1.644-4.076 4.47zm1.736-.822v-.197c0-1.25.949-2.104 2.324-2.104 1.326 0 2.21.822 2.21 2.021v.28h-4.534z"></path>
|
||
</svg>
|
||
</a>
|
||
|
||
<button aria-label="Close ReadME Project Navigation" aria-expanded="false" type="button" data-view-component="true" class="readme-logo-link--inverted no-underline readme-nav__button js-details-target btn-link"> <div class="d-flex flex-items-center">
|
||
<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" class="">
|
||
<rect x="6.85742" y="6.85693" width="3.42859" height="3.42859"></rect>
|
||
<rect x="10.2861" y="10.2856" width="3.42859" height="3.42859"></rect>
|
||
<rect x="13.7139" y="13.7144" width="3.42859" height="3.42859"></rect>
|
||
<rect x="13.7139" y="6.85693" width="3.42859" height="3.42859"></rect>
|
||
<rect x="6.85742" y="13.7144" width="3.42859" height="3.42859"></rect>
|
||
<rect x="3.42871" y="17.1431" width="3.42859" height="3.42859"></rect>
|
||
<rect x="17.1426" y="17.1431" width="3.42859" height="3.42859"></rect>
|
||
<rect x="20.5713" y="20.5713" width="3.42859" height="3.42859"></rect>
|
||
<rect y="20.5713" width="3.42859" height="3.42859"></rect>
|
||
<rect x="20.5713" width="3.42859" height="3.42859"></rect>
|
||
<rect width="3.42859" height="3.42859"></rect>
|
||
<rect x="3.42871" y="3.42871" width="3.42859" height="3.42859"></rect>
|
||
<rect x="17.1426" y="3.42871" width="3.42859" height="3.42859"></rect>
|
||
</svg>
|
||
</div>
|
||
</button> </div>
|
||
|
||
<div class="flex-1 d-lg-flex width-full">
|
||
<div class="col-lg-7 col-xl-8 tmp-pb-3 tmp-pb-lg-0 border-lg-right border-bottom border-lg-bottom-0 readme-border-fade--white">
|
||
<h2 id="storyType" class="readme-heading--condensed f3-mktg text-semibold text-uppercase tmp-px-3 tmp-px-lg-4 tmp-py-3 border-bottom readme-border-fade--white">
|
||
Browse by story type
|
||
</h2>
|
||
|
||
<ul aria-labelledby="storyType" class="d-inline-block list-style-none py-2 tmp-py-lg-3 readme-nav__list">
|
||
<li class="readme-heading-1 readme-heading--condensed text-uppercase tmp-px-3 tmp-px-lg-4 py-2 tmp-py-lg-3 readme-nav__list-item">
|
||
<a class="d-block width-full color-fg-on-emphasis no-underline readme-underline--blue readme-nav__list-link" href="/readme/featured">
|
||
<span class="d-inline-block">Featured Articles</span>
|
||
</a> </li>
|
||
<li class="readme-heading-1 readme-heading--condensed text-uppercase tmp-px-3 tmp-px-lg-4 py-2 tmp-py-lg-3 readme-nav__list-item">
|
||
<a class="d-block width-full color-fg-on-emphasis no-underline readme-underline--blue readme-nav__list-link" href="/readme/stories">
|
||
<span class="d-inline-block">Developer Stories</span>
|
||
</a> </li>
|
||
<li class="readme-heading-1 readme-heading--condensed text-uppercase tmp-px-3 tmp-px-lg-4 py-2 tmp-py-lg-3 readme-nav__list-item">
|
||
<a class="d-block width-full color-fg-on-emphasis no-underline readme-underline--blue readme-nav__list-link" href="/readme/guides">
|
||
<span class="d-inline-block">Guides</span>
|
||
</a> </li>
|
||
<li class="readme-heading-1 readme-heading--condensed text-uppercase tmp-px-3 tmp-px-lg-4 py-2 tmp-py-lg-3 readme-nav__list-item">
|
||
<a class="d-block width-full color-fg-on-emphasis no-underline readme-underline--blue readme-nav__list-link" href="/readme/podcast">
|
||
<span class="d-inline-block">The ReadMe Podcast</span>
|
||
</a> </li>
|
||
</ul>
|
||
</div>
|
||
|
||
<div class="d-flex flex-column col-lg-5 col-xl-4">
|
||
<div class="d-flex flex-justify-between tmp-px-3 tmp-pr-lg-6 tmp-pl-lg-4 tmp-py-3 border-bottom readme-border-fade--white">
|
||
<h2 id="exploreTopics" class="readme-heading--condensed f3-mktg text-semibold text-uppercase">Explore Topics</h2>
|
||
|
||
<a aria-labelledby="exploreTopics" href="/readme/topics" class="arrow-target-mktg no-underline text-mono text-uppercase f5-mktg lh-condensed readme-logo-link--inverted" style="letter-spacing:0.05em">
|
||
See all topics <svg xmlns="http://www.w3.org/2000/svg" class="octicon arrow-symbol-mktg octicon" width="16" height="16" viewBox="0 0 16 16" fill="none"><path fill="currentColor" d="M7.28033 3.21967C6.98744 2.92678 6.51256 2.92678 6.21967 3.21967C5.92678 3.51256 5.92678 3.98744 6.21967 4.28033L7.28033 3.21967ZM11 8L11.5303 8.53033C11.8232 8.23744 11.8232 7.76256 11.5303 7.46967L11 8ZM6.21967 11.7197C5.92678 12.0126 5.92678 12.4874 6.21967 12.7803C6.51256 13.0732 6.98744 13.0732 7.28033 12.7803L6.21967 11.7197ZM6.21967 4.28033L10.4697 8.53033L11.5303 7.46967L7.28033 3.21967L6.21967 4.28033ZM10.4697 7.46967L6.21967 11.7197L7.28033 12.7803L11.5303 8.53033L10.4697 7.46967Z"></path><path class="octicon-chevrow-stem" stroke="currentColor" d="M1.75 8H11" stroke-width="1.5" stroke-linecap="round"></path></svg>
|
||
</a>
|
||
</div>
|
||
|
||
<ul class="py-2 py-lg-0 list-style-none height-full d-flex flex-column flex-justify-around readme-nav__list">
|
||
<li class="flex-1 d-flex flex-items-center readme-heading-3 tmp-px-3 tmp-px-lg-4 border-lg-bottom readme-border-fade--white readme-nav__list-item">
|
||
<a class="d-block width-full tmp-py-3 tmp-py-lg-4 color-fg-on-emphasis no-underline readme-underline--blue readme-nav__list-link" data-test-selector="topic-link" href="/readme/artificial-intelligence">
|
||
<span>AI</span>
|
||
</a> </li>
|
||
<li class="flex-1 d-flex flex-items-center readme-heading-3 tmp-px-3 tmp-px-lg-4 border-lg-bottom readme-border-fade--white readme-nav__list-item">
|
||
<a class="d-block width-full tmp-py-3 tmp-py-lg-4 color-fg-on-emphasis no-underline readme-underline--blue readme-nav__list-link" data-test-selector="topic-link" href="/readme/application-security">
|
||
<span>Application Security</span>
|
||
</a> </li>
|
||
<li class="flex-1 d-flex flex-items-center readme-heading-3 tmp-px-3 tmp-px-lg-4 border-lg-bottom readme-border-fade--white readme-nav__list-item">
|
||
<a class="d-block width-full tmp-py-3 tmp-py-lg-4 color-fg-on-emphasis no-underline readme-underline--blue readme-nav__list-link" data-test-selector="topic-link" href="/readme/career-development">
|
||
<span>Career Development</span>
|
||
</a> </li>
|
||
<li class="flex-1 d-flex flex-items-center readme-heading-3 tmp-px-3 tmp-px-lg-4 border-lg-bottom readme-border-fade--white readme-nav__list-item">
|
||
<a class="d-block width-full tmp-py-3 tmp-py-lg-4 color-fg-on-emphasis no-underline readme-underline--blue readme-nav__list-link" data-test-selector="topic-link" href="/readme/devops-automation">
|
||
<span>DevOps & Automation</span>
|
||
</a> </li>
|
||
<li class="flex-1 d-flex flex-items-center readme-heading-3 tmp-px-3 tmp-px-lg-4 border-lg-bottom readme-border-fade--white readme-nav__list-item">
|
||
<a class="d-block width-full tmp-py-3 tmp-py-lg-4 color-fg-on-emphasis no-underline readme-underline--blue readme-nav__list-link" data-test-selector="topic-link" href="/readme/maintainer">
|
||
<span>Maintainer</span>
|
||
</a> </li>
|
||
<li class="flex-1 d-flex flex-items-center readme-heading-3 tmp-px-3 tmp-px-lg-4 readme-nav__list-item">
|
||
<a class="d-block width-full tmp-py-3 tmp-py-lg-4 color-fg-on-emphasis no-underline readme-underline--blue readme-nav__list-link" data-test-selector="topic-link" href="/readme/programming">
|
||
<span>Programming</span>
|
||
</a> </li>
|
||
</ul>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="tmp-px-3 tmp-pl-md-8 tmp-pr-lg-4 tmp-py-4 tmp-ml-md-n6 border-top readme-border-fade--white">
|
||
<ul class="list-style-none text-mono text-uppercase f5-mktg readme-nav__list" style="letter-spacing:0.05em">
|
||
<li class="d-md-inline-block mb-2 mb-md-0 readme-nav__list-item">
|
||
<a class="color-fg-on-emphasis readme-nav__list-link" href="/readme/nominate">Nominate a developer</a><span class="d-none d-md-inline-block tmp-ml-4 tmp-mr-3" style="opacity:0.3">//</span>
|
||
</li>
|
||
|
||
<li class="d-md-inline-block readme-nav__list-item">
|
||
<a class="color-fg-on-emphasis readme-nav__list-link" href="/sponsors">Support the community</a>
|
||
</li>
|
||
</ul>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</nav>
|
||
|
||
|
||
<div class="position-md-relative col-md-2 float-md-left readme-about ">
|
||
<div class="position-relative z-1 tmp-mb-md-6 tmp-mb-md-6 tmp-pt-4 border-top f5-mktg text-mono readme-text-gray-dark" style="border-color:#4969ED !important;">
|
||
<p><strong class="readme-text-black">The ReadME Project</strong> amplifies the voices of the open source community: the maintainers, developers, and teams whose contributions move the world forward every day.</p>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="position-md-sticky col-md-2 top-md-12 tmp-mt-4 tmp-mb-8 tmp-my-md-0 float-md-left readme-sharing" style="clear:left;">
|
||
<ul class="list-style-none d-flex flex-md-column">
|
||
|
||
|
||
<li class="tmp-mr-4 tmp-mr-md-0 tmp-mb-md-4">
|
||
<a href="https://twitter.com/intent/tweet?url=https%3A%2F%2Fgithub.com%2Freadme%2Fguides%2Fstaff-engineers&text=Whether%20you%E2%80%99re%20already%20a%20staff%2B%20engineer%20or%20you%E2%80%99re%20looking%20to%20advance%2C%20here%E2%80%99s%20how%20to%20be%20a%20force%20multiplier%20for%20your%20teams%20and%20organization" target="_blank" rel="noopener" aria-label="Share on Twitter" data-ga-click="ReadME Stories, click, ref_page:/readme/guides/staff-engineers;ref_cta:share on Twitter;ref_loc:Profile sidebar" class="d-flex flex-justify-center flex-items-center border color-border-subtle circle readme-social-link" style="width:50px;height:50px">
|
||
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 16 16" width="16" height="20" aria-hidden="true" class="d-block link-blue-readme"><path fill="currentColor" d="M9.332 6.925 14.544 1h-1.235L8.783 6.145 5.17 1H1l5.466 7.78L1 14.993h1.235l4.78-5.433 3.816 5.433H15L9.332 6.925ZM7.64 8.848l-.554-.775L2.68 1.91h1.897l3.556 4.975.554.775 4.622 6.466h-1.897L7.64 8.848Z"></path></svg>
|
||
</a>
|
||
</li>
|
||
|
||
<li class="tmp-mr-4 tmp-mr-md-0 tmp-mb-md-4">
|
||
<a href="https://www.facebook.com/sharer/sharer.php?u=https%3A%2F%2Fgithub.com%2Freadme%2Fguides%2Fstaff-engineers&quote=Whether%20you%E2%80%99re%20already%20a%20staff%2B%20engineer%20or%20you%E2%80%99re%20looking%20to%20advance%2C%20here%E2%80%99s%20how%20to%20be%20a%20force%20multiplier%20for%20your%20teams%20and%20organization" target="_blank" rel="noopener" onclick="javascript:window.open(this.href, '', 'menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=300,width=600');return false;" aria-label="Share on Facebook" data-ga-click="ReadME Stories, click, ref_page:/readme/guides/staff-engineers;ref_cta:share on Facebook;ref_loc:Profile sidebar" class="d-flex flex-justify-center flex-items-center border color-border-subtle circle readme-social-link" style="width:50px;height:50px">
|
||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 15.3 15.4" aria-hidden="true" class="d-block link-blue-readme" height="20"><path d="M14.5 0H.8a.88.88 0 0 0-.8.9v13.6a.88.88 0 0 0 .8.9h7.3v-6h-2V7.1h2V5.4a2.87 2.87 0 0 1 2.5-3.1h.5a10.87 10.87 0 0 1 1.8.1v2.1h-1.3c-1 0-1.1.5-1.1 1.1v1.5h2.3l-.3 2.3h-2v5.9h3.9a.88.88 0 0 0 .9-.8V.8a.86.86 0 0 0-.8-.8z" fill="currentColor"></path></svg>
|
||
</a>
|
||
</li>
|
||
|
||
<li class="tmp-mr-4 tmp-mr-md-0 tmp-mb-md-4">
|
||
<a href="https://www.linkedin.com/sharing/share-offsite/?url=https%3A%2F%2Fgithub.com%2Freadme%2Fguides%2Fstaff-engineers" target="_blank" rel="noopener" onclick="javascript:window.open(this.href, '', 'menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=300,width=600');return false;" aria-label="Share on LinkedIn" data-ga-click="ReadME Stories, click, ref_page:/readme/guides/staff-engineers;ref_cta:share on LinkedIn;ref_loc:Profile sidebar" class="d-flex flex-justify-center flex-items-center border color-border-subtle circle readme-social-link" style="width:50px;height:50px">
|
||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 19 18" aria-hidden="true" class="d-block link-blue-readme" height="20"><path d="M3.94 2A2 2 0 1 1 2 0a2 2 0 0 1 1.94 2zM4 5.48H0V18h4zm6.32 0H6.34V18h3.94v-6.57c0-3.66 4.77-4 4.77 0V18H19v-7.93c0-6.17-7.06-5.94-8.72-2.91z" fill="currentColor"></path></svg>
|
||
</a>
|
||
</li>
|
||
</ul>
|
||
</div>
|
||
|
||
|
||
<div class="f3-mktg readme-story-body readme-story-body--guide" data-hpc>
|
||
|
||
|
||
|
||
<p>In this Guide you will learn:</p>
|
||
<ol><li><p>How you can advance your technical career without becoming a manager</p></li><li><p>What non-technical skills you need to foster to help your team thrive</p></li><li><p>How to grow as a leader in staff+ roles</p></li></ol>
|
||
<hr>
|
||
<p>Management isn’t the only path you can take as you grow your software development career beyond the role of senior engineer. If you want to remain a technical individual contributor (IC), you can pursue a role as a staff engineer, principal engineer, distinguished engineer, or similar—roles that are often referred to as “staff+” level. But even though these aren’t management roles, you’ll still be expected to be a leader.</p>
|
||
<p>As a staff+ engineer, or a senior engineer looking to advance, you should be a force multiplier both within your team and in the larger organization. At this level, it’s not enough to just write great code. You need to level up the people around you by enabling them to work more effectively, both on their own and with others. One important way to do this is to help foster a collaborative culture at your organization.</p>
|
||
<p>In recent years, more and more organizations have realized that a culture of collaboration is much more efficient than one full of silos. Movements like DevOps and site reliability engineering (SRE) have brought in different lenses for encouraging collaboration between developers, operations and infrastructure engineers, security personnel, and even the product and business side of things. Organizations must find ways to make their engineering environments more collaborative or risk losing both market share and employees to competitors.</p>
|
||
<p>A collaborative culture can’t be created by a mandate from the executive team. Culture is created by what individual people do day to day: The IC engineers’ practices will determine if a culture is collaborative or not. To that end, staff+ engineers can be instrumental in creating this type of culture by guiding team and organizational behavior in terms of goal setting, decision making, feedback gathering, and organizational learning.</p>
|
||
<h2>Support organizational goals</h2>
|
||
<p>If you don’t know what you’re aiming for, you’re probably not going to achieve it. Making sure everyone has a clear picture of their individual, team, and organizational goals is key to reaching them, and leaders should ensure that those different levels of goals don’t conflict with each other. As a staff+ engineer, you need to understand the big picture of what your organization is trying to accomplish over the next six to 12 months in order to ensure your team’s work supports these goals. </p>
|
||
<p>For more product-centric development teams, this might be fairly straightforward: Someone makes a decision about new products or features that they want to release to customers, and those teams execute on building and releasing those features. For teams that are in supporting roles throughout the organization, such as operations and security teams, their work may not align so directly. Ops teams who manage infrastructure—regardless of what customer-facing features are deployed on that infrastructure—can often feel like they exist outside their organization’s larger goals.</p>
|
||
<p>If you’re a leader on one of those supporting teams, you need to make sure your team understands how their work can support the overall organization and product goals. For example, if a company sets a goal of growing their customer base, an ops or database team can make sure that the infrastructure is set up to handle increased load, proactively working to address potential bottlenecks or scaling issues before they become customer-facing problems. Or, if the development teams are trying to cut down on the number of bugs that get released into production, the infrastructure team can find ways to help support those efforts such as adding test infrastructure, creating a more usable pre-production environment, and so forth. </p>
|
||
<p>This type of work means talking with adjacent teams to figure out what their goals are and how you can help them reach those goals—which may mean defining what they actually <i>need</i> and not just what they say they want. While more junior engineers might be in the habit of fulfilling requests exactly as they come in, those at a higher level should be thinking critically about the requests your team receives, how various requests interact with each other, and how those requests relate to the larger goals. For example, if you’re getting multiple requests from various people or teams to spin up VMs or test environments for them, maybe there’s some shared test environment or self-service VM provisioning process that would make life easier for everyone.</p>
|
||
<h2>Make decisions effectively</h2>
|
||
<p>At any reasonably-sized organization, you’re going to have lots of different people with lots of different ideas about how things should be done. A staff+ engineer can help their team and organization find ways to make decisions that strike the right balance between arriving at a conclusion quickly and making sure they’ve considered all the possibilities.</p>
|
||
<p>There are two extreme ends of the decision-making spectrum, and organizations of any size can fall into either of those traps. On the one hand, the process can be too top-down, hasty, or overbearing. This might look like a small startup where the technical cofounder makes every single decision themself with no room for argument, or an enterprise where everything is mandated by the C-suite. Decisions might be quick, but this method risks option bias, and often leaves the rest of the company feeling like their voices don’t matter. On the other hand, you can end up with consensus-style decision-making that drags on and on forever, leading to debates that never end, or people who are afraid of speaking up if their opinion is in the minority. Neither process is good for making decisions effectively.</p>
|
||
<p>There’s no magic wand that can make all these problems go away, but there are some things that can help make the decision-making process less painful. First, document your current process. Try and define which decisions can be made by one individual, and which require some sort of buy-in or approval from others. Create templates for <a href="https://github.com/readme/guides/making-decisions-in-OSS"><u>RFCs</u></a> or design documents that can help standardize how your team thinks through large-scale technical decisions. Set deadlines for when and how a decision will be made in advance. This might look like: “I will leave this RFC open for comments until X date; if nobody has objected to the proposed solution by then I will begin implementing it.” This way, you know how and when you’ll move forward instead of languishing in uncertainty forever. </p>
|
||
<p>The “<a href="https://en.wikipedia.org/wiki/Disagree_and_commit"><u>disagree and commit</u></a>” principle is sometimes used by organizations that want to look like they’re giving everyone’s voice a chance to be heard, but in reality they’re falling into more authoritarian decision-making processes. However, the principle is worth keeping in mind: You do want to have an organization where people have enough psychological safety to speak up when they disagree with something. A staff+ engineer can help foster this by facilitating group discussions, shutting down harmful disagreement styles such as personal attacks, and making sure that the loudest members of a group don’t dominate. </p>
|
||
<p>An organization without disagreement is either a hive-mind or one where some people have given up on trying to participate. You also want an organization that gets things done (not one where you discover that all your competitors have passed you by while you were still picking colors for your bikeshed). Staff+ engineers should be empowered to move a team forward if they’re getting stuck, while still making sure that there’s room to course-correct if necessary.</p>
|
||
<h2>Iterate on feedback</h2>
|
||
<p>With few exceptions, organizations don’t end up with ineffective decision-making processes because they love arguing. They are motivated by an often-reasonable fear of making the wrong decision, of wasting time working on something that turns out to be the wrong thing. While I’m not recommending that you start making decisions by throwing darts at a Gantt chart or yolo-ing everyone’s first ideas into production, it’s crucial to be able to make decisions knowing that you will be able to evaluate sooner rather than later and then pivot if necessary. To do that, you need to collect and act on feedback.</p>
|
||
<p>It is well known that long feedback loops and slow development cycle times don’t work in modern engineering environments. There is a reason that we’ve moved away from the waterfall method and towards more agile development methods. Being able to effectively collect, process, and act on feedback in a timely manner is key to having an organization that can keep up with the pace of the world. This includes getting feedback not just on development progress and customer satisfaction, but how your internal processes are working and how employee happiness.</p>
|
||
<p>As a staff+ engineer, you will need to plan and organize project work in a way that builds in feedback loops at every step. This starts with identifying owners and stakeholders and including them throughout the process—you can’t know that you’re building the right thing if you don’t know who you’re building it for and why. Then, make sure you don’t paint yourself into a corner as the work progresses. Start with a proof of concept or MVP that can be evaluated at the early stages of work. Have regular development milestones and check-ins with stakeholders to make sure everything is on track; if requirements change on either end, you’ll want to know that sooner rather than later. Be sure to architect your work in forward-looking ways. For example, write your software so that logs and metrics are modularized rather than hard-coded. This way, if your team changes how they handle logging and observability in the future, you can change the contents of just that module—rather than unpicking the details out of the entire codebase.</p>
|
||
<p>Leaders within the team, including both ICs and managers, should help their teammates work this way as well. Have regular 1:1s with the more junior members of your team and help them think through asking for and receiving feedback on their own work. While a staff+ engineer might have regular meetings with leaders on other teams to keep up with changing goals and requirements, engineers with smaller scopes of work should be doing the same thing, perhaps with stakeholders within their own team. This is all in addition to the basics like having regular standups (whether synchronously or not) and performing reviews of code and planning docs.</p>
|
||
<p>As with making decisions, there is an element of psychological safety at play when it comes to soliciting and acting on feedback. If people don’t feel safe in their work environment, they aren’t going to speak up if they think something is wrong. Developing ongoing relationships with team members, making sure to call out and discourage counterproductive behavior, and creating an environment where mistakes are not punitively punished can help create an atmosphere where people are more comfortable taking risks—whether that means speaking up or testing a new solution.</p>
|
||
<h2>Learn as you go</h2>
|
||
<p>Soliciting feedback won’t do you any good if you don’t ever act on that feedback. If you create an MVP of a product and get early feedback from customers, find out they don’t like it, and keep going with your original designs, you’re still going to end up with a product that customers don’t like. You must change course when needed, which can be tricky because changing direction often means admitting that your initial direction was at least a little bit wrong—and in a culture without psychological safety, people don’t want to be wrong about anything.</p>
|
||
<p>Staff+ engineers can lead by example. Perhaps the most straightforward way of doing this is admitting when you’re wrong. Ask questions in public Slack channels rather than DMs. Speak up when you don’t know something. Respond to questions that others ask in channel, and make sure to respond in a way that’s helpful rather than condescending. For starters, follow the “<a href="https://jvns.ca/blog/2017/04/27/no-feigning-surprise/"><u>No Feigning Surprise</u></a>” rule. As a staff+ engineer, you aren’t expected to know everything, but you should be expected to build a culture where learning is encouraged.</p>
|
||
<p>In addition to learning at an individual level, it’s also important to facilitate learning at team and organizational levels. One great way to do this is through post-mortems or retrospectives. The key here is to not punish people for making honest mistakes or speaking out about them. If people are punished for admitting they made a mistake, you aren’t going to create a culture where nobody makes mistakes. Instead,nobody will ever own up to anything, and you’ll be in the dark about how to avoid said mistake in the future. </p>
|
||
<p>Instead, practice <a href="https://www.etsy.com/codeascraft/blameless-postmortems/"><u>blameless post-mortems</u></a> where people are free to explain their experiences without fear of punishment or retribution. The thing to look for is an understanding of <i>why</i> people acted the way they did. Start with the assumption that nobody comes to work with the goal of causing problems on purpose, and go from there. Staff+ engineers can help with post-mortem facilitation, engaging in dialogue to find out the reasoning behind various actions or decisions. You might find out that your documentation is incorrect, or that some default CLI option is destructive, or that you have different goals working in conflict with one another—but if you don’t find out why things happened, you have very little hope of fixing them next time.</p>
|
||
<p>Balance is key when it comes to learning from and responding to feedback. On the one hand, you don’t want to <i>never</i> change course: That way lies the stagnant ruts of “but we’ve always done things this way,” which are blockers of organizational learning and progress. On the other hand, you don’t want to turn into the organizational equivalent of a chicken with its head cut off, changing major goals and initiatives so often that you never actually complete any meaningful amount of work. It can help to set regular cadences for reviews to try and help strike that balance, like weekly team sprints and quarterly reviews for organizational goals.</p>
|
||
<h2>Parting thoughts</h2>
|
||
<p>Collaboration is a key part of any modern engineering culture, and as a staff+ engineer, it is your responsibility to help shape the culture of your team and larger organization to be a healthy and collaborative one. Stay on top of team and organizational goals to ensure you’re all moving in the right direction. Work towards decision-making processes that give people a chance to be heard without needing to get 100% consensus on everything. Foster an environment of psychological safety where team members are comfortable giving and receiving feedback, and where people can talk about and learn from their mistakes. All of these elements combine to create a culture where individuals and teams can work and learn together in order to move towards their shared organizational goals.</p>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="col-md-8 offset-md-3 tmp-mt-5 tmp-mt-md-6 tmp-mb-9 tmp-mb-md-n6 readme-signoff">
|
||
<svg height="36" aria-hidden="true" data-component="Octicon" viewBox="0 0 24 24" version="1.1" width="36" data-view-component="true" class="octicon octicon-mark-github">
|
||
<path d="M10.226 17.284c-2.965-.36-5.054-2.493-5.054-5.256 0-1.123.404-2.336 1.078-3.144-.292-.741-.247-2.314.09-2.965.898-.112 2.111.36 2.83 1.01.853-.269 1.752-.404 2.853-.404 1.1 0 1.999.135 2.807.382.696-.629 1.932-1.1 2.83-.988.315.606.36 2.179.067 2.942.72.854 1.101 2 1.101 3.167 0 2.763-2.089 4.852-5.098 5.234.763.494 1.28 1.572 1.28 2.807v2.336c0 .674.561 1.056 1.235.786 4.066-1.55 7.255-5.615 7.255-10.646C23.5 6.188 18.334 1 11.978 1 5.62 1 .5 6.188.5 12.545c0 4.986 3.167 9.12 7.435 10.669.606.225 1.19-.18 1.19-.786V20.63a2.9 2.9 0 0 1-1.078.224c-1.483 0-2.359-.808-2.987-2.313-.247-.607-.517-.966-1.034-1.033-.27-.023-.359-.135-.359-.27 0-.27.45-.471.898-.471.652 0 1.213.404 1.797 1.235.45.651.921.943 1.483.943.561 0 .92-.202 1.437-.719.382-.381.674-.718.944-.943"></path>
|
||
</svg>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
<div class="container-xl p-responsive-readme f3-mktg mx-auto">
|
||
<div class="col-md-8 offset-md-3">
|
||
<div class="border-top color-border-accent-emphasis text-mono color-fg-muted f4-mktg tmp-mt-5 tmp-mt-md-6 tmp-pt-5 tmp-pt-md-6 readme-postscript">
|
||
<p>Ryn Daniels is a principal infrastructure engineer who got their start in programming with TI-80 calculators back when GeoCities was still cool. Their work has focused on infrastructure operability, sustainable on-call practices, and the design of effective and empathetic engineering cultures. They are the co-author of O’Reilly’s Effective DevOps and have spoken at numerous industry conferences on DevOps engineering and culture topics. Ryn lives in Helsinki, Finland with a perfectly reasonable number of cats and in their spare time can often be found painting, playing cello, or handcrafting knitted server koozies for the data center.</p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
|
||
|
||
|
||
<div class="readme-bg-white tmp-py-5 tmp-py-md-6 overflow-hidden">
|
||
<div class="container-xl p-responsive">
|
||
<h2 class="h5-mktg border-bottom tmp-pb-4 tmp-mb-6">
|
||
More stories
|
||
</h2>
|
||
|
||
<div class="d-md-flex gutter-sm gutter-md-spacious">
|
||
<div class="d-flex flex-column col-md-4">
|
||
<a class="d-block readme-link" data-analytics-event="{"category":"ReadME Stories","action":"click","label":"ref_page:/readme/guides/staff-engineers;ref_cta:From chaos to clarity: Use code visibility to illuminate unfamiliar code;ref_loc:More stories"}" href="/readme/guides/code-visibility-codesee">
|
||
<figure class="tmp-mb-5 readme-link__figure js-readme-rotate">
|
||
<picture>
|
||
<source srcset="//images.ctfassets.net/s5uo95nf6njh/4Gxy54Y7YT2Cu1gqdjFCnt/de5747fbcb146809def4d0adb48a679b/Github-Security.JPG?w=1200&fm=avif 1200w,//images.ctfassets.net/s5uo95nf6njh/4Gxy54Y7YT2Cu1gqdjFCnt/de5747fbcb146809def4d0adb48a679b/Github-Security.JPG?w=960&fm=avif 960w,//images.ctfassets.net/s5uo95nf6njh/4Gxy54Y7YT2Cu1gqdjFCnt/de5747fbcb146809def4d0adb48a679b/Github-Security.JPG?w=720&fm=avif 720w,//images.ctfassets.net/s5uo95nf6njh/4Gxy54Y7YT2Cu1gqdjFCnt/de5747fbcb146809def4d0adb48a679b/Github-Security.JPG?w=600&fm=avif 600w,//images.ctfassets.net/s5uo95nf6njh/4Gxy54Y7YT2Cu1gqdjFCnt/de5747fbcb146809def4d0adb48a679b/Github-Security.JPG?w=480&fm=avif 480w,//images.ctfassets.net/s5uo95nf6njh/4Gxy54Y7YT2Cu1gqdjFCnt/de5747fbcb146809def4d0adb48a679b/Github-Security.JPG?w=240&fm=avif 240w" sizes="(max-width: 755px) 90vw, 45vw" type="image/avif"></source>
|
||
<source srcset="//images.ctfassets.net/s5uo95nf6njh/4Gxy54Y7YT2Cu1gqdjFCnt/de5747fbcb146809def4d0adb48a679b/Github-Security.JPG?w=1200&fm=webp 1200w,//images.ctfassets.net/s5uo95nf6njh/4Gxy54Y7YT2Cu1gqdjFCnt/de5747fbcb146809def4d0adb48a679b/Github-Security.JPG?w=960&fm=webp 960w,//images.ctfassets.net/s5uo95nf6njh/4Gxy54Y7YT2Cu1gqdjFCnt/de5747fbcb146809def4d0adb48a679b/Github-Security.JPG?w=720&fm=webp 720w,//images.ctfassets.net/s5uo95nf6njh/4Gxy54Y7YT2Cu1gqdjFCnt/de5747fbcb146809def4d0adb48a679b/Github-Security.JPG?w=600&fm=webp 600w,//images.ctfassets.net/s5uo95nf6njh/4Gxy54Y7YT2Cu1gqdjFCnt/de5747fbcb146809def4d0adb48a679b/Github-Security.JPG?w=480&fm=webp 480w,//images.ctfassets.net/s5uo95nf6njh/4Gxy54Y7YT2Cu1gqdjFCnt/de5747fbcb146809def4d0adb48a679b/Github-Security.JPG?w=240&fm=webp 240w" sizes="(max-width: 755px) 90vw, 45vw" type="image/webp"></source>
|
||
<source srcset="//images.ctfassets.net/s5uo95nf6njh/4Gxy54Y7YT2Cu1gqdjFCnt/de5747fbcb146809def4d0adb48a679b/Github-Security.JPG?w=1200&fm=jpg 1200w,//images.ctfassets.net/s5uo95nf6njh/4Gxy54Y7YT2Cu1gqdjFCnt/de5747fbcb146809def4d0adb48a679b/Github-Security.JPG?w=960&fm=jpg 960w,//images.ctfassets.net/s5uo95nf6njh/4Gxy54Y7YT2Cu1gqdjFCnt/de5747fbcb146809def4d0adb48a679b/Github-Security.JPG?w=720&fm=jpg 720w,//images.ctfassets.net/s5uo95nf6njh/4Gxy54Y7YT2Cu1gqdjFCnt/de5747fbcb146809def4d0adb48a679b/Github-Security.JPG?w=600&fm=jpg 600w,//images.ctfassets.net/s5uo95nf6njh/4Gxy54Y7YT2Cu1gqdjFCnt/de5747fbcb146809def4d0adb48a679b/Github-Security.JPG?w=480&fm=jpg 480w,//images.ctfassets.net/s5uo95nf6njh/4Gxy54Y7YT2Cu1gqdjFCnt/de5747fbcb146809def4d0adb48a679b/Github-Security.JPG?w=240&fm=jpg 240w" sizes="(max-width: 755px) 90vw, 45vw" type="image/jpeg"></source>
|
||
<img class="d-block height-auto width-full readme-link__img" width="1200" height="1400" loading="lazy" decoding="async" alt="Photo of Shanea Leven" src="//images.ctfassets.net/s5uo95nf6njh/4Gxy54Y7YT2Cu1gqdjFCnt/de5747fbcb146809def4d0adb48a679b/Github-Security.JPG?w=1200&fm=jpg" />
|
||
</picture>
|
||
</figure>
|
||
|
||
<h3 class="readme-heading-3 tmp-mb-5">
|
||
<span class="no-underline readme-underline--green">
|
||
<span>From chaos to clarity: Use code visibility to illuminate unfamiliar code</span>
|
||
</span>
|
||
</h3>
|
||
</a>
|
||
<div class="text-mono text-uppercase color-fg-muted f5-mktg" style="letter-spacing:0.05em">
|
||
Shanea Leven // CodeSee
|
||
</div>
|
||
</div>
|
||
<div class="d-flex flex-column col-md-4">
|
||
<a class="d-block readme-link" data-analytics-event="{"category":"ReadME Stories","action":"click","label":"ref_page:/readme/guides/staff-engineers;ref_cta:Do your part to secure the open source supply chain;ref_loc:More stories"}" href="/readme/guides/dependency-risk">
|
||
<figure class="tmp-mb-5 readme-link__figure js-readme-rotate">
|
||
<picture>
|
||
<source srcset="//images.ctfassets.net/s5uo95nf6njh/4823v8OtGp7S2UWpdfaDLe/40b5dd6243507fccf358a65d476c5560/Github_Security__1_.jpg?w=1200&fm=avif 1200w,//images.ctfassets.net/s5uo95nf6njh/4823v8OtGp7S2UWpdfaDLe/40b5dd6243507fccf358a65d476c5560/Github_Security__1_.jpg?w=960&fm=avif 960w,//images.ctfassets.net/s5uo95nf6njh/4823v8OtGp7S2UWpdfaDLe/40b5dd6243507fccf358a65d476c5560/Github_Security__1_.jpg?w=720&fm=avif 720w,//images.ctfassets.net/s5uo95nf6njh/4823v8OtGp7S2UWpdfaDLe/40b5dd6243507fccf358a65d476c5560/Github_Security__1_.jpg?w=600&fm=avif 600w,//images.ctfassets.net/s5uo95nf6njh/4823v8OtGp7S2UWpdfaDLe/40b5dd6243507fccf358a65d476c5560/Github_Security__1_.jpg?w=480&fm=avif 480w,//images.ctfassets.net/s5uo95nf6njh/4823v8OtGp7S2UWpdfaDLe/40b5dd6243507fccf358a65d476c5560/Github_Security__1_.jpg?w=240&fm=avif 240w" sizes="(max-width: 755px) 90vw, 45vw" type="image/avif"></source>
|
||
<source srcset="//images.ctfassets.net/s5uo95nf6njh/4823v8OtGp7S2UWpdfaDLe/40b5dd6243507fccf358a65d476c5560/Github_Security__1_.jpg?w=1200&fm=webp 1200w,//images.ctfassets.net/s5uo95nf6njh/4823v8OtGp7S2UWpdfaDLe/40b5dd6243507fccf358a65d476c5560/Github_Security__1_.jpg?w=960&fm=webp 960w,//images.ctfassets.net/s5uo95nf6njh/4823v8OtGp7S2UWpdfaDLe/40b5dd6243507fccf358a65d476c5560/Github_Security__1_.jpg?w=720&fm=webp 720w,//images.ctfassets.net/s5uo95nf6njh/4823v8OtGp7S2UWpdfaDLe/40b5dd6243507fccf358a65d476c5560/Github_Security__1_.jpg?w=600&fm=webp 600w,//images.ctfassets.net/s5uo95nf6njh/4823v8OtGp7S2UWpdfaDLe/40b5dd6243507fccf358a65d476c5560/Github_Security__1_.jpg?w=480&fm=webp 480w,//images.ctfassets.net/s5uo95nf6njh/4823v8OtGp7S2UWpdfaDLe/40b5dd6243507fccf358a65d476c5560/Github_Security__1_.jpg?w=240&fm=webp 240w" sizes="(max-width: 755px) 90vw, 45vw" type="image/webp"></source>
|
||
<source srcset="//images.ctfassets.net/s5uo95nf6njh/4823v8OtGp7S2UWpdfaDLe/40b5dd6243507fccf358a65d476c5560/Github_Security__1_.jpg?w=1200&fm=jpg 1200w,//images.ctfassets.net/s5uo95nf6njh/4823v8OtGp7S2UWpdfaDLe/40b5dd6243507fccf358a65d476c5560/Github_Security__1_.jpg?w=960&fm=jpg 960w,//images.ctfassets.net/s5uo95nf6njh/4823v8OtGp7S2UWpdfaDLe/40b5dd6243507fccf358a65d476c5560/Github_Security__1_.jpg?w=720&fm=jpg 720w,//images.ctfassets.net/s5uo95nf6njh/4823v8OtGp7S2UWpdfaDLe/40b5dd6243507fccf358a65d476c5560/Github_Security__1_.jpg?w=600&fm=jpg 600w,//images.ctfassets.net/s5uo95nf6njh/4823v8OtGp7S2UWpdfaDLe/40b5dd6243507fccf358a65d476c5560/Github_Security__1_.jpg?w=480&fm=jpg 480w,//images.ctfassets.net/s5uo95nf6njh/4823v8OtGp7S2UWpdfaDLe/40b5dd6243507fccf358a65d476c5560/Github_Security__1_.jpg?w=240&fm=jpg 240w" sizes="(max-width: 755px) 90vw, 45vw" type="image/jpeg"></source>
|
||
<img class="d-block height-auto width-full readme-link__img" width="1200" height="1400" loading="lazy" decoding="async" alt="Photo of Feross Aboukhadijeh" src="//images.ctfassets.net/s5uo95nf6njh/4823v8OtGp7S2UWpdfaDLe/40b5dd6243507fccf358a65d476c5560/Github_Security__1_.jpg?w=1200&fm=jpg" />
|
||
</picture>
|
||
</figure>
|
||
|
||
<h3 class="readme-heading-3 tmp-mb-5">
|
||
<span class="no-underline readme-underline--green">
|
||
<span>Do your part to secure the open source supply chain</span>
|
||
</span>
|
||
</h3>
|
||
</a>
|
||
<div class="text-mono text-uppercase color-fg-muted f5-mktg" style="letter-spacing:0.05em">
|
||
Feross Aboukhadijeh // Socket
|
||
</div>
|
||
</div>
|
||
<div class="d-flex flex-column col-md-4">
|
||
<a class="d-block readme-link" data-analytics-event="{"category":"ReadME Stories","action":"click","label":"ref_page:/readme/guides/staff-engineers;ref_cta:The case for using Rust in MLOps;ref_loc:More stories"}" href="/readme/guides/rust-mlops">
|
||
<figure class="tmp-mb-5 readme-link__figure js-readme-rotate">
|
||
<picture>
|
||
<source srcset="//images.ctfassets.net/s5uo95nf6njh/2NQyZkQODnlSIOj7K2DNpS/b99fb15c1b6cc02911a8275ca834dd4a/Github-DevOps-1A__1_.JPG?w=1200&fm=avif 1200w,//images.ctfassets.net/s5uo95nf6njh/2NQyZkQODnlSIOj7K2DNpS/b99fb15c1b6cc02911a8275ca834dd4a/Github-DevOps-1A__1_.JPG?w=960&fm=avif 960w,//images.ctfassets.net/s5uo95nf6njh/2NQyZkQODnlSIOj7K2DNpS/b99fb15c1b6cc02911a8275ca834dd4a/Github-DevOps-1A__1_.JPG?w=720&fm=avif 720w,//images.ctfassets.net/s5uo95nf6njh/2NQyZkQODnlSIOj7K2DNpS/b99fb15c1b6cc02911a8275ca834dd4a/Github-DevOps-1A__1_.JPG?w=600&fm=avif 600w,//images.ctfassets.net/s5uo95nf6njh/2NQyZkQODnlSIOj7K2DNpS/b99fb15c1b6cc02911a8275ca834dd4a/Github-DevOps-1A__1_.JPG?w=480&fm=avif 480w,//images.ctfassets.net/s5uo95nf6njh/2NQyZkQODnlSIOj7K2DNpS/b99fb15c1b6cc02911a8275ca834dd4a/Github-DevOps-1A__1_.JPG?w=240&fm=avif 240w" sizes="(max-width: 755px) 90vw, 45vw" type="image/avif"></source>
|
||
<source srcset="//images.ctfassets.net/s5uo95nf6njh/2NQyZkQODnlSIOj7K2DNpS/b99fb15c1b6cc02911a8275ca834dd4a/Github-DevOps-1A__1_.JPG?w=1200&fm=webp 1200w,//images.ctfassets.net/s5uo95nf6njh/2NQyZkQODnlSIOj7K2DNpS/b99fb15c1b6cc02911a8275ca834dd4a/Github-DevOps-1A__1_.JPG?w=960&fm=webp 960w,//images.ctfassets.net/s5uo95nf6njh/2NQyZkQODnlSIOj7K2DNpS/b99fb15c1b6cc02911a8275ca834dd4a/Github-DevOps-1A__1_.JPG?w=720&fm=webp 720w,//images.ctfassets.net/s5uo95nf6njh/2NQyZkQODnlSIOj7K2DNpS/b99fb15c1b6cc02911a8275ca834dd4a/Github-DevOps-1A__1_.JPG?w=600&fm=webp 600w,//images.ctfassets.net/s5uo95nf6njh/2NQyZkQODnlSIOj7K2DNpS/b99fb15c1b6cc02911a8275ca834dd4a/Github-DevOps-1A__1_.JPG?w=480&fm=webp 480w,//images.ctfassets.net/s5uo95nf6njh/2NQyZkQODnlSIOj7K2DNpS/b99fb15c1b6cc02911a8275ca834dd4a/Github-DevOps-1A__1_.JPG?w=240&fm=webp 240w" sizes="(max-width: 755px) 90vw, 45vw" type="image/webp"></source>
|
||
<source srcset="//images.ctfassets.net/s5uo95nf6njh/2NQyZkQODnlSIOj7K2DNpS/b99fb15c1b6cc02911a8275ca834dd4a/Github-DevOps-1A__1_.JPG?w=1200&fm=jpg 1200w,//images.ctfassets.net/s5uo95nf6njh/2NQyZkQODnlSIOj7K2DNpS/b99fb15c1b6cc02911a8275ca834dd4a/Github-DevOps-1A__1_.JPG?w=960&fm=jpg 960w,//images.ctfassets.net/s5uo95nf6njh/2NQyZkQODnlSIOj7K2DNpS/b99fb15c1b6cc02911a8275ca834dd4a/Github-DevOps-1A__1_.JPG?w=720&fm=jpg 720w,//images.ctfassets.net/s5uo95nf6njh/2NQyZkQODnlSIOj7K2DNpS/b99fb15c1b6cc02911a8275ca834dd4a/Github-DevOps-1A__1_.JPG?w=600&fm=jpg 600w,//images.ctfassets.net/s5uo95nf6njh/2NQyZkQODnlSIOj7K2DNpS/b99fb15c1b6cc02911a8275ca834dd4a/Github-DevOps-1A__1_.JPG?w=480&fm=jpg 480w,//images.ctfassets.net/s5uo95nf6njh/2NQyZkQODnlSIOj7K2DNpS/b99fb15c1b6cc02911a8275ca834dd4a/Github-DevOps-1A__1_.JPG?w=240&fm=jpg 240w" sizes="(max-width: 755px) 90vw, 45vw" type="image/jpeg"></source>
|
||
<img class="d-block height-auto width-full readme-link__img" width="1200" height="1400" loading="lazy" decoding="async" alt="Photo of Noah Gift" src="//images.ctfassets.net/s5uo95nf6njh/2NQyZkQODnlSIOj7K2DNpS/b99fb15c1b6cc02911a8275ca834dd4a/Github-DevOps-1A__1_.JPG?w=1200&fm=jpg" />
|
||
</picture>
|
||
</figure>
|
||
|
||
<h3 class="readme-heading-3 tmp-mb-5">
|
||
<span class="no-underline readme-underline--green">
|
||
<span>The case for using Rust in MLOps</span>
|
||
</span>
|
||
</h3>
|
||
</a>
|
||
<div class="text-mono text-uppercase color-fg-muted f5-mktg" style="letter-spacing:0.05em">
|
||
Noah Gift // Pragmatic AI Labs
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
<div class="tmp-py-4 tmp-py-lg-6 readme-bg-white overflow-hidden">
|
||
<div class="container-readme p-responsive-readme">
|
||
<div class="d-lg-flex">
|
||
<div class="position-relative d-flex flex-items-center col-md-11 col-lg-10 readme-bg-black--pattern">
|
||
<div class="position-relative col-lg-7 tmp-px-3 tmp-py-6 tmp-p-md-6 tmp-pb-md-8 tmp-pt-lg-8 tmp-pl-xl-8">
|
||
<h2 class="readme-heading-1 readme-heading--condensed tmp-mb-6 color-text-white">About The <br class="d-none d-sm-inline">ReadME Project</h2>
|
||
<p class="f3-mktg tmp-mb-6 color-text-white">Coding is usually seen as a solitary activity, but it’s actually the world’s largest community effort led by open source maintainers, contributors, and teams. These unsung heroes put in long hours to build software, fix issues, field questions, and manage communities.</p>
|
||
<p class="f3-mktg tmp-mb-6 color-text-white">The ReadME Project is part of GitHub’s ongoing effort to amplify the voices of the developer community. It’s an evolving space to engage with the community and explore the stories, challenges, technology, and culture that surround the world of open source.</p>
|
||
|
||
<div class="d-flex flex-wrap">
|
||
<h3 class="readme-heading--condensed f3-mktg text-semibold text-uppercase color-text-white tmp-mr-4">Follow us:</h3>
|
||
|
||
<ul class="list-style-none d-flex flex-items-center">
|
||
|
||
<li class="tmp-mr-4">
|
||
<a href="https://twitter.com/github" target="_blank" rel="noopener" aria-label="Follow on Twitter" class="d-flex flex-justify-center flex-items-center">
|
||
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 16 16" width="16" height="20" aria-hidden="true" class="d-block readme-icon-link--inverted"><path fill="currentColor" d="M9.332 6.925 14.544 1h-1.235L8.783 6.145 5.17 1H1l5.466 7.78L1 14.993h1.235l4.78-5.433 3.816 5.433H15L9.332 6.925ZM7.64 8.848l-.554-.775L2.68 1.91h1.897l3.556 4.975.554.775 4.622 6.466h-1.897L7.64 8.848Z"></path></svg>
|
||
</a>
|
||
</li>
|
||
<li class="tmp-mr-4">
|
||
<a href="https://www.facebook.com/GitHub" target="_blank" rel="noopener" aria-label="Follow on Facebook" class="d-flex flex-justify-center flex-items-center">
|
||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 15.3 15.4" aria-hidden="true" class="d-block readme-icon-link--inverted" height="20"><path d="M14.5 0H.8a.88.88 0 0 0-.8.9v13.6a.88.88 0 0 0 .8.9h7.3v-6h-2V7.1h2V5.4a2.87 2.87 0 0 1 2.5-3.1h.5a10.87 10.87 0 0 1 1.8.1v2.1h-1.3c-1 0-1.1.5-1.1 1.1v1.5h2.3l-.3 2.3h-2v5.9h3.9a.88.88 0 0 0 .9-.8V.8a.86.86 0 0 0-.8-.8z" fill="currentColor"></path></svg>
|
||
</a>
|
||
</li>
|
||
<li class="tmp-mr-4">
|
||
<a href="https://www.instagram.com/github" target="_blank" rel="noopener" aria-label="Follow on Instagram" class="d-flex flex-justify-center flex-items-center">
|
||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 25 24" fill="currentColor" aria-hidden="true" class="d-block readme-icon-link--inverted" height="20">
|
||
<path d="M7.65241 0.0884315C6.65471 0.108122 5.66763 0.297424 4.73344 0.648234C3.93562 0.953396 3.21108 1.4233 2.60708 2.0273C2.00308 2.63131 1.53317 3.35584 1.22801 4.15366C0.878679 5.08365 0.689401 6.0661 0.668206 7.05931C0.614891 8.33886 0.601562 8.75204 0.601562 12.0042C0.601562 15.2697 0.614891 15.6696 0.668206 16.9492C0.734849 18.2287 0.934778 19.0951 1.22801 19.8681C1.53014 20.6698 2.00052 21.3975 2.60748 22.0022C3.21445 22.6069 3.94391 23.0745 4.74677 23.3736C5.67676 23.7229 6.6592 23.9122 7.65241 23.9334C8.93196 23.9867 9.33182 24 12.584 24C15.8495 24 16.2627 23.9867 17.5423 23.9334C18.5355 23.9122 19.5179 23.7229 20.4479 23.3736C21.2476 23.067 21.914 22.6538 22.5805 21.9874C23.2469 21.3209 23.6468 20.6545 23.9533 19.8548C24.3027 18.9248 24.4919 17.9424 24.5131 16.9492C24.5664 15.6696 24.5798 15.2697 24.5798 12.0176C24.5798 8.75204 24.5798 8.33886 24.5131 7.05931C24.4919 6.0661 24.3027 5.08365 23.9533 4.15366C23.6468 3.35395 23.2336 2.68752 22.5671 2.02108C21.9007 1.35465 21.2343 0.954793 20.4479 0.648234C19.5179 0.298905 18.5355 0.109627 17.5423 0.0884315C16.2627 0.035117 15.8495 0.0217883 12.5973 0.0217883C10.9488 -0.0220065 9.29917 0.000225717 7.65241 0.0884315ZM17.4356 2.24767C18.6085 2.30098 19.2483 2.50091 19.6615 2.64753C20.1788 2.85208 20.6483 3.1613 21.0405 3.55579C21.4327 3.95029 21.7392 4.42156 21.9407 4.94005C22.2044 5.65302 22.3441 6.40584 22.3539 7.16594C22.4072 8.43216 22.4205 8.80536 22.4205 12.0042C22.4205 15.2031 22.4205 15.5896 22.3539 16.8559C22.3489 17.6152 22.2137 18.3681 21.954 19.0817C21.7539 19.5991 21.4448 20.0673 21.0477 20.4546C20.6212 20.8811 20.2213 21.1343 19.6615 21.3609C19.2483 21.5209 18.6085 21.7208 17.4356 21.7608C16.1694 21.8274 15.7962 21.8408 12.5973 21.8408C9.39846 21.8408 9.01193 21.8274 7.74571 21.7741C6.98556 21.7649 6.23265 21.6251 5.51983 21.3609C5.00029 21.1651 4.5312 20.8554 4.14698 20.4546C3.74616 20.0704 3.43647 19.6013 3.24063 19.0817C3.08069 18.6552 2.88076 18.0154 2.84077 16.8559C2.77413 15.5896 2.7608 15.2164 2.7608 12.0042C2.7608 8.80536 2.77413 8.43216 2.82744 7.16594C2.83722 6.40584 2.97696 5.65302 3.24063 4.94005C3.46722 4.38025 3.72046 3.98039 4.14698 3.55388C4.56017 3.14069 4.96003 2.88744 5.51983 2.66086C5.94634 2.50091 6.58612 2.30098 7.74571 2.24767C9.01193 2.19436 9.38513 2.18103 12.5973 2.18103C15.7962 2.18103 16.1694 2.18103 17.4356 2.24767Z"></path>
|
||
<path d="M12.5959 16.003C11.5354 16.003 10.5183 15.5817 9.76844 14.8318C9.01856 14.0819 8.59728 13.0649 8.59728 12.0044C8.59728 10.9439 9.01856 9.92684 9.76844 9.17696C10.5183 8.42708 11.5354 8.0058 12.5959 8.0058C13.6564 8.0058 14.6734 8.42708 15.4233 9.17696C16.1732 9.92684 16.5945 10.9439 16.5945 12.0044C16.5945 13.0649 16.1732 14.0819 15.4233 14.8318C14.6734 15.5817 13.6564 16.003 12.5959 16.003ZM12.5959 5.84656C11.7872 5.84656 10.9865 6.00584 10.2394 6.3153C9.49227 6.62476 8.81344 7.07834 8.24163 7.65014C7.66982 8.22195 7.21624 8.90079 6.90678 9.64789C6.59732 10.395 6.43805 11.1957 6.43805 12.0044C6.43805 12.813 6.59732 13.6138 6.90678 14.3609C7.21624 15.108 7.66982 15.7868 8.24163 16.3586C8.81344 16.9304 9.49227 17.384 10.2394 17.6935C10.9865 18.0029 11.7872 18.1622 12.5959 18.1622C14.229 18.1622 15.7953 17.5134 16.9501 16.3586C18.1049 15.2038 18.7537 13.6375 18.7537 12.0044C18.7537 10.3712 18.1049 8.80496 16.9501 7.65014C15.7953 6.49533 14.229 5.84656 12.5959 5.84656ZM20.4331 5.60664C20.4331 5.98842 20.2814 6.35456 20.0115 6.62452C19.7415 6.89447 19.3754 7.04614 18.9936 7.04614C18.6118 7.04614 18.2457 6.89447 17.9757 6.62452C17.7058 6.35456 17.5541 5.98842 17.5541 5.60664C17.5541 5.22487 17.7058 4.85873 17.9757 4.58877C18.2457 4.31881 18.6118 4.16715 18.9936 4.16715C19.3754 4.16715 19.7415 4.31881 20.0115 4.58877C20.2814 4.85873 20.4331 5.22487 20.4331 5.60664Z"></path>
|
||
<path d="M9.85322 14.747C10.5806 15.4744 11.5672 15.8831 12.5959 15.8831C13.6246 15.8831 14.6111 15.4744 15.3385 14.747C16.0659 14.0196 16.4746 13.0331 16.4746 12.0044C16.4746 10.9757 16.0659 9.98913 15.3385 9.26173C14.6111 8.53434 13.6246 8.12569 12.5959 8.12569C11.5672 8.12569 10.5806 8.53434 9.85322 9.26173C9.12582 9.98913 8.71718 10.9757 8.71718 12.0044C8.71718 13.0331 9.12582 14.0196 9.85322 14.747ZM10.1935 6.20453C10.9551 5.88905 11.7715 5.72667 12.5959 5.72667C14.2608 5.72667 15.8576 6.38807 17.0349 7.56537C18.2122 8.74267 18.8736 10.3394 18.8736 12.0044C18.8736 13.6693 18.2122 15.2661 17.0349 16.4434C15.8576 17.6207 14.2608 18.2821 12.5959 18.2821C11.7715 18.2821 10.9551 18.1197 10.1935 17.8042C9.43185 17.4888 8.7398 17.0263 8.15686 16.4434C7.57392 15.8605 7.1115 15.1684 6.79602 14.4068C6.48053 13.6451 6.31815 12.8288 6.31815 12.0044C6.31815 11.18 6.48053 10.3637 6.79602 9.60201C7.1115 8.84036 7.57392 8.14831 8.15686 7.56537C8.7398 6.98243 9.43185 6.52002 10.1935 6.20453ZM20.553 5.60664C20.553 6.02022 20.3887 6.41685 20.0963 6.70929C19.8038 7.00173 19.4072 7.16603 18.9936 7.16603C18.58 7.16603 18.1834 7.00173 17.891 6.70929C17.5985 6.41685 17.4342 6.02022 17.4342 5.60664C17.4342 5.19307 17.5985 4.79643 17.891 4.50399C18.1834 4.21155 18.58 4.04726 18.9936 4.04726C19.4072 4.04726 19.8038 4.21155 20.0963 4.50399C20.3887 4.79643 20.553 5.19307 20.553 5.60664ZM9.76844 14.8318C10.5183 15.5817 11.5354 16.003 12.5959 16.003C13.6564 16.003 14.6734 15.5817 15.4233 14.8318C16.1732 14.0819 16.5945 13.0649 16.5945 12.0044C16.5945 10.9439 16.1732 9.92684 15.4233 9.17696C14.6734 8.42708 13.6564 8.0058 12.5959 8.0058C11.5354 8.0058 10.5183 8.42708 9.76844 9.17696C9.01856 9.92684 8.59728 10.9439 8.59728 12.0044C8.59728 13.0649 9.01856 14.0819 9.76844 14.8318ZM10.2394 6.3153C10.9865 6.00584 11.7872 5.84656 12.5959 5.84656C14.229 5.84656 15.7953 6.49533 16.9501 7.65014C18.1049 8.80496 18.7537 10.3712 18.7537 12.0044C18.7537 13.6375 18.1049 15.2038 16.9501 16.3586C15.7953 17.5134 14.229 18.1622 12.5959 18.1622C11.7872 18.1622 10.9865 18.0029 10.2394 17.6935C9.49227 17.384 8.81344 16.9304 8.24163 16.3586C7.66982 15.7868 7.21624 15.108 6.90678 14.3609C6.59732 13.6138 6.43805 12.813 6.43805 12.0044C6.43805 11.1957 6.59732 10.395 6.90678 9.64789C7.21624 8.90079 7.66982 8.22195 8.24163 7.65014C8.81344 7.07834 9.49227 6.62476 10.2394 6.3153ZM20.0115 6.62452C20.2814 6.35456 20.4331 5.98842 20.4331 5.60664C20.4331 5.22487 20.2814 4.85873 20.0115 4.58877C19.7415 4.31881 19.3754 4.16715 18.9936 4.16715C18.6118 4.16715 18.2457 4.31881 17.9757 4.58877C17.7058 4.85873 17.5541 5.22487 17.5541 5.60664C17.5541 5.98842 17.7058 6.35456 17.9757 6.62452C18.2457 6.89447 18.6118 7.04614 18.9936 7.04614C19.3754 7.04614 19.7415 6.89447 20.0115 6.62452Z"></path>
|
||
</svg>
|
||
</a>
|
||
</li>
|
||
<li class="tmp-mr-4">
|
||
<a href="https://www.linkedin.com/company/github" target="_blank" rel="noopener" aria-label="Follow on LinkedIn" class="d-flex flex-justify-center flex-items-center">
|
||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 19 18" aria-hidden="true" class="d-block readme-icon-link--inverted" height="20"><path d="M3.94 2A2 2 0 1 1 2 0a2 2 0 0 1 1.94 2zM4 5.48H0V18h4zm6.32 0H6.34V18h3.94v-6.57c0-3.66 4.77-4 4.77 0V18H19v-7.93c0-6.17-7.06-5.94-8.72-2.91z" fill="currentColor"></path></svg>
|
||
</a>
|
||
</li>
|
||
<li class="tmp-mr-4">
|
||
<a href="/readme.rss" target="_blank" rel="noopener" aria-label="Grab the ReadME Project RSS link" class="d-flex flex-justify-center flex-items-center">
|
||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" aria-hidden="true" class="d-block readme-icon-link--inverted" height="20"><path d="M4.87725 15.564C4.87725 16.9095 3.78525 18 2.439 18C1.092 18 0 16.9095 0 15.564C0 14.2185 1.092 13.128 2.439 13.128C3.78525 13.1288 4.87725 14.2185 4.87725 15.564ZM1.81214 6.28433C0.821676 6.12662 0 6.95184 0 7.95478V7.95478C0 8.94548 0.80745 9.7311 1.77335 9.95134C4.88751 10.6614 7.34477 13.1147 8.05723 16.2246C8.27873 17.1915 9.06526 18 10.0572 18V18C11.0614 18 11.8877 17.1772 11.729 16.1856C10.9163 11.1056 6.89914 7.09432 1.81214 6.28433ZM0 1.81156C0 2.80552 0.807508 3.60066 1.79343 3.72683C8.29332 4.55863 13.4443 9.69716 14.2712 16.2022C14.3968 17.1901 15.193 18 16.1889 18V18C17.1885 18 18.0077 17.1862 17.9062 16.1918C17.0415 7.71196 10.2969 0.968855 1.80862 0.0956699C0.814393 -0.00660638 0 0.81208 0 1.81156V1.81156Z" fill="currentColor"></path></svg>
|
||
</a>
|
||
</li>
|
||
</ul>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="position-relative col-md-11 col-lg-6 col-xl-5 float-md-right float-lg-none offset-lg-n4 offset-xl-n3 tmp-mt-md-n4 tmp-mt-lg-8 tmp-mb-lg-n4 tmp-mb-lg-n8 tmp-px-3 tmp-py-6 tmp-px-md-6 tmp-py-md-8 tmp-pl-xl-8 tmp-pr-xl-8 tmp-py-xl-9 z-1 readme-bg-blue color-text-white">
|
||
|
||
<h4 class="readme-heading-3 readme-heading--condensed text-uppercase">
|
||
<a href="https://github.com/readme/nominate" data-ga-click="Nominate a person or project, click, ref_page:/readme/guides/staff-engineers;ref_cta:Nominate a person or project;ref_loc:readme homepage" class="readme-focus-on-blue no-underline color-text-white arrow-target-mktg">Nominate a developer<span class="ml-1 d-inline-flex flex-items-start" aria-hidden="true"><svg xmlns="http://www.w3.org/2000/svg" class="octicon arrow-symbol-mktg octicon" width="16" height="16" viewBox="0 0 16 16" fill="none"><path fill="currentColor" d="M7.28033 3.21967C6.98744 2.92678 6.51256 2.92678 6.21967 3.21967C5.92678 3.51256 5.92678 3.98744 6.21967 4.28033L7.28033 3.21967ZM11 8L11.5303 8.53033C11.8232 8.23744 11.8232 7.76256 11.5303 7.46967L11 8ZM6.21967 11.7197C5.92678 12.0126 5.92678 12.4874 6.21967 12.7803C6.51256 13.0732 6.98744 13.0732 7.28033 12.7803L6.21967 11.7197ZM6.21967 4.28033L10.4697 8.53033L11.5303 7.46967L7.28033 3.21967L6.21967 4.28033ZM10.4697 7.46967L6.21967 11.7197L7.28033 12.7803L11.5303 8.53033L10.4697 7.46967Z"></path><path class="octicon-chevrow-stem" stroke="currentColor" d="M1.75 8H11" stroke-width="1.5" stroke-linecap="round"></path></svg></span>
|
||
</a>
|
||
</h4>
|
||
<p class="f3-mktg mb-0">Nominate inspiring developers and projects you think we should feature in The ReadME Project.</p>
|
||
|
||
<h4 class="readme-heading-3 readme-heading--condensed text-uppercase tmp-pt-6 tmp-pt-md-8">
|
||
<a href="https://github.com/sponsors" data-ga-click="Support the community, click to support the community, ref_page:/readme/guides/staff-engineers;ref_cta:Support the community;ref_loc:readme homepage" class="readme-focus-on-blue no-underline color-text-white arrow-target-mktg">Support the community<span class="ml-1 d-inline-flex flex-items-start" aria-hidden="true"><svg xmlns="http://www.w3.org/2000/svg" class="octicon arrow-symbol-mktg octicon" width="16" height="16" viewBox="0 0 16 16" fill="none"><path fill="currentColor" d="M7.28033 3.21967C6.98744 2.92678 6.51256 2.92678 6.21967 3.21967C5.92678 3.51256 5.92678 3.98744 6.21967 4.28033L7.28033 3.21967ZM11 8L11.5303 8.53033C11.8232 8.23744 11.8232 7.76256 11.5303 7.46967L11 8ZM6.21967 11.7197C5.92678 12.0126 5.92678 12.4874 6.21967 12.7803C6.51256 13.0732 6.98744 13.0732 7.28033 12.7803L6.21967 11.7197ZM6.21967 4.28033L10.4697 8.53033L11.5303 7.46967L7.28033 3.21967L6.21967 4.28033ZM10.4697 7.46967L6.21967 11.7197L7.28033 12.7803L11.5303 8.53033L10.4697 7.46967Z"></path><path class="octicon-chevrow-stem" stroke="currentColor" d="M1.75 8H11" stroke-width="1.5" stroke-linecap="round"></path></svg></span>
|
||
</a>
|
||
</h4>
|
||
<p class="f3-mktg mb-0">Recognize developers working behind the scenes and help open source projects get the resources they need.</p>
|
||
|
||
<h4 class="readme-heading-3 readme-heading--condensed text-uppercase tmp-pt-6 tmp-pt-md-8">
|
||
<a
|
||
target="_blank"
|
||
rel="noopener"
|
||
aria-label="Sign up for the newsletter (opens in a new tab)"
|
||
href="https://resources.github.com/newsletter-open-source/"
|
||
data-ga-click="Sign up for the newsletter, click, ref_page:/readme/guides/staff-engineers;ref_cta:Sign up for the newsletter;ref_loc:readme homepage"
|
||
class="readme-focus-on-blue no-underline color-text-white arrow-target-mktg"
|
||
>
|
||
Sign up for the newsletter
|
||
<span class="ml-1 d-inline-flex flex-items-start" aria-hidden="true">
|
||
<svg xmlns="http://www.w3.org/2000/svg" class="octicon arrow-symbol-mktg octicon" width="16" height="16" viewBox="0 0 16 16" fill="none"><path fill="currentColor" d="M7.28033 3.21967C6.98744 2.92678 6.51256 2.92678 6.21967 3.21967C5.92678 3.51256 5.92678 3.98744 6.21967 4.28033L7.28033 3.21967ZM11 8L11.5303 8.53033C11.8232 8.23744 11.8232 7.76256 11.5303 7.46967L11 8ZM6.21967 11.7197C5.92678 12.0126 5.92678 12.4874 6.21967 12.7803C6.51256 13.0732 6.98744 13.0732 7.28033 12.7803L6.21967 11.7197ZM6.21967 4.28033L10.4697 8.53033L11.5303 7.46967L7.28033 3.21967L6.21967 4.28033ZM10.4697 7.46967L6.21967 11.7197L7.28033 12.7803L11.5303 8.53033L10.4697 7.46967Z"></path><path class="octicon-chevrow-stem" stroke="currentColor" d="M1.75 8H11" stroke-width="1.5" stroke-linecap="round"></path></svg>
|
||
</span>
|
||
</a>
|
||
</h4>
|
||
<p class="f3-mktg mb-0">Sharpen your open source skills with tips, tools, and insights. Delivered monthly.</p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
</div>
|
||
|
||
</main>
|
||
|
||
</div>
|
||
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/primer-react-7450ad822d7699b5.js" fetchpriority="low" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/react-lib-3b03eb55bae46c70.js" fetchpriority="low" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/aq-ba5f008999aedbd0.js" fetchpriority="low" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/nvz-deeea5270ef3dfb4.js" fetchpriority="low" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/mz-a6c5397389be3fff.js" fetchpriority="low" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/3d-82c347d20a13fb90.js" fetchpriority="low" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/5t-dc6e19f29c4172a8.js" fetchpriority="low" />
|
||
<link crossorigin="anonymous" rel="modulepreload" href="https://github.githubassets.com/assets/marketing-footer-99e0f43bfaab7003.js" fetchpriority="low" />
|
||
<link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/primer-react-css.bad9067f7ec9f6d1.module.css" />
|
||
<link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/primer-react-brand-css.206bbd4fd232654e.module.css" />
|
||
<link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/marketing-footer.048794eddf380fba.module.css" />
|
||
|
||
<react-partial
|
||
partial-name="marketing-footer"
|
||
data-ssr="true"
|
||
data-attempted-ssr="true"
|
||
data-react-profiling="false"
|
||
>
|
||
|
||
<script type="application/json" data-target="react-partial.embeddedData">{"props":{"cookieConsentEnabled":true,"colorMode":"light","currentLocale":"en","localeOptions":[{"displayName":"English","selectorLocale":"en-us","analyticsLabel":"locale:en-us"},{"displayName":"Português (Brasil)","selectorLocale":"pt-br","analyticsLabel":"locale:pt-br"},{"displayName":"Español (América Latina)","selectorLocale":"es-419","analyticsLabel":"locale:es-419"},{"displayName":"日本語","selectorLocale":"ja","analyticsLabel":"locale:ja"},{"displayName":"한국어","selectorLocale":"ko-kr","analyticsLabel":"locale:ko-kr"},{"displayName":"Français","selectorLocale":"fr-fr","analyticsLabel":"locale:fr-fr"},{"displayName":"Deutsch","selectorLocale":"de-de","analyticsLabel":"locale:de-de"}],"showAdminToggle":false,"isAdminModeOn":false,"adminTogglePath":null,"showUiOptOut":false,"isUiOptedOut":false,"uiOptOutTogglePath":null}}</script>
|
||
<div data-target="react-partial.reactRoot"><div data-color-mode="light"><footer class="MarketingFooter-module__footer__sWiQH" role="contentinfo" data-analytics-category="Footer"><h2 class="visually-hidden">Site-wide Links</h2><div class="MarketingFooter-module__container__FiPNP"><div class="MarketingFooter-module__topRow__dhoq5"><section class="Newsletter-module__newsletter__WQAO6 MarketingFooter-module__newsletter__FkId8" aria-labelledby="subscribe-to-newsletter"><a href="/" class="Newsletter-module__logoLink__llafS" aria-label="Go to GitHub homepage"><svg data-component="Octicon" aria-hidden="true" focusable="false" class="octicon octicon-mark-github Newsletter-module__logo__rcAsT" viewBox="0 0 24 24" width="32" height="32" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M10.226 17.284c-2.965-.36-5.054-2.493-5.054-5.256 0-1.123.404-2.336 1.078-3.144-.292-.741-.247-2.314.09-2.965.898-.112 2.111.36 2.83 1.01.853-.269 1.752-.404 2.853-.404 1.1 0 1.999.135 2.807.382.696-.629 1.932-1.1 2.83-.988.315.606.36 2.179.067 2.942.72.854 1.101 2 1.101 3.167 0 2.763-2.089 4.852-5.098 5.234.763.494 1.28 1.572 1.28 2.807v2.336c0 .674.561 1.056 1.235.786 4.066-1.55 7.255-5.615 7.255-10.646C23.5 6.188 18.334 1 11.978 1 5.62 1 .5 6.188.5 12.545c0 4.986 3.167 9.12 7.435 10.669.606.225 1.19-.18 1.19-.786V20.63a2.9 2.9 0 0 1-1.078.224c-1.483 0-2.359-.808-2.987-2.313-.247-.607-.517-.966-1.034-1.033-.27-.023-.359-.135-.359-.27 0-.27.45-.471.898-.471.652 0 1.213.404 1.797 1.235.45.651.921.943 1.483.943.561 0 .92-.202 1.437-.719.382-.381.674-.718.944-.943"></path></svg></a><h3 class="Primer_Brand__Heading-module__Heading___fudyh Primer_Brand__Heading-module__Heading-font--monospace___wf5_H Primer_Brand__Heading-module__Heading--6___QHTZH Primer_Brand__Heading-module__Heading--textWrap-balance___XJ9OD Newsletter-module__heading__T6FMN" id="subscribe-to-newsletter"><span class="Newsletter-module__headingDot__mwB26" aria-hidden="true"></span>The developer newsletter</h3><p class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--muted___rE6mh Primer_Brand__Text-module__Text--200____P1wy Primer_Brand__Text-module__Text--antialiased___TYoXS Newsletter-module__description__LBtd9">Get tips, technical guides, and best practices. Twice a month. Right in your inbox.</p><a class="Primer_Brand__Button-module__Button___scH9Z Primer_Brand__Button-module__Button--primary___MSbnU Primer_Brand__Button-module__Button--size-small___zQrEw Newsletter-module__cta___iepg" href="/newsletter"><span class="Primer_Brand__Button-module__Button__text___ED0bX"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Text-module__Text--weight-medium___qJKf_ Primer_Brand__Button-module__Button--label___qrkyz Primer_Brand__Button-module__Button--label-primary___QX1u5">Subscribe</span></span></a></section><div class="MarketingFooter-module__columns__hFD_D"><nav class="LinkColumn-module__column__vXgUS" aria-labelledby="footer-title-platform"><h3 class="Primer_Brand__Heading-module__Heading___fudyh Primer_Brand__Heading-module__Heading-font--monospace___wf5_H Primer_Brand__Heading-module__Heading--6___QHTZH Primer_Brand__Heading-module__Heading--textWrap-balance___XJ9OD LinkColumn-module__heading__vyqWX" id="footer-title-platform">Platform</h3><ul class="LinkColumn-module__list__q5Tn1"><li class="LinkColumn-module__item__nrsNE"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="/features" data-analytics-event="{"location":"footer","tag":"link","action":"features","context":"platform"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Link-module__Link--label___jM8Ty">Features</span></a></li><li class="LinkColumn-module__item__nrsNE"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="/enterprise" data-analytics-event="{"location":"footer","tag":"link","action":"enterprise","context":"platform"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Link-module__Link--label___jM8Ty">Enterprise</span></a></li><li class="LinkColumn-module__item__nrsNE"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="/features/copilot" data-analytics-event="{"location":"footer","tag":"link","action":"copilot","context":"platform"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Link-module__Link--label___jM8Ty">Copilot</span></a></li><li class="LinkColumn-module__item__nrsNE"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="/features/ai" data-analytics-event="{"location":"footer","tag":"link","action":"ai","context":"platform"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Link-module__Link--label___jM8Ty">AI</span></a></li><li class="LinkColumn-module__item__nrsNE"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="/security" data-analytics-event="{"location":"footer","tag":"link","action":"security","context":"platform"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Link-module__Link--label___jM8Ty">Security</span></a></li><li class="LinkColumn-module__item__nrsNE"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="/pricing" data-analytics-event="{"location":"footer","tag":"link","action":"pricing","context":"platform"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Link-module__Link--label___jM8Ty">Pricing</span></a></li><li class="LinkColumn-module__item__nrsNE"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="/team" data-analytics-event="{"location":"footer","tag":"link","action":"team","context":"platform"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Link-module__Link--label___jM8Ty">Team</span></a></li><li class="LinkColumn-module__item__nrsNE"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://github.com/resources" data-analytics-event="{"location":"footer","tag":"link","action":"resources","context":"platform"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Link-module__Link--label___jM8Ty">Resources</span></a></li><li class="LinkColumn-module__item__nrsNE"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="/github/roadmap" data-analytics-event="{"location":"footer","tag":"link","action":"roadmap","context":"platform"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Link-module__Link--label___jM8Ty">Roadmap</span></a></li><li class="LinkColumn-module__item__nrsNE"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="/resources/articles/devops-tools-comparison" data-analytics-event="{"location":"footer","tag":"link","action":"compare","context":"platform"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Link-module__Link--label___jM8Ty">Compare GitHub</span></a></li></ul></nav><nav class="LinkColumn-module__column__vXgUS" aria-labelledby="footer-title-ecosystem"><h3 class="Primer_Brand__Heading-module__Heading___fudyh Primer_Brand__Heading-module__Heading-font--monospace___wf5_H Primer_Brand__Heading-module__Heading--6___QHTZH Primer_Brand__Heading-module__Heading--textWrap-balance___XJ9OD LinkColumn-module__heading__vyqWX" id="footer-title-ecosystem">Ecosystem</h3><ul class="LinkColumn-module__list__q5Tn1"><li class="LinkColumn-module__item__nrsNE"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://docs.github.com/integrations/concepts/about-building-integrations" data-analytics-event="{"location":"footer","tag":"link","action":"dev-api","context":"ecosystem"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Link-module__Link--label___jM8Ty">Developer API</span></a></li><li class="LinkColumn-module__item__nrsNE"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://github.com/partners" data-analytics-event="{"location":"footer","tag":"link","action":"partners","context":"ecosystem"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Link-module__Link--label___jM8Ty">Partners</span></a></li><li class="LinkColumn-module__item__nrsNE"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="/education" data-analytics-event="{"location":"footer","tag":"link","action":"edu","context":"ecosystem"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Link-module__Link--label___jM8Ty">Education</span></a></li><li class="LinkColumn-module__item__nrsNE"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://cli.github.com" data-analytics-event="{"location":"footer","tag":"link","action":"cli","context":"ecosystem"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Link-module__Link--label___jM8Ty">GitHub CLI</span></a></li><li class="LinkColumn-module__item__nrsNE"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://github.com/apps/desktop" data-analytics-event="{"location":"footer","tag":"link","action":"desktop","context":"ecosystem"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Link-module__Link--label___jM8Ty">GitHub Desktop</span></a></li><li class="LinkColumn-module__item__nrsNE"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="/mobile" data-analytics-event="{"location":"footer","tag":"link","action":"mobile","context":"ecosystem"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Link-module__Link--label___jM8Ty">GitHub Mobile</span></a></li><li class="LinkColumn-module__item__nrsNE"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="/marketplace" data-analytics-event="{"location":"footer","tag":"link","action":"marketplace","context":"ecosystem"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Link-module__Link--label___jM8Ty">GitHub Marketplace</span></a></li><li class="LinkColumn-module__item__nrsNE"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="/mcp" data-analytics-event="{"location":"footer","tag":"link","action":"mcp_registry","context":"ecosystem"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Link-module__Link--label___jM8Ty">MCP Registry</span></a></li></ul></nav><nav class="LinkColumn-module__column__vXgUS" aria-labelledby="footer-title-support"><h3 class="Primer_Brand__Heading-module__Heading___fudyh Primer_Brand__Heading-module__Heading-font--monospace___wf5_H Primer_Brand__Heading-module__Heading--6___QHTZH Primer_Brand__Heading-module__Heading--textWrap-balance___XJ9OD LinkColumn-module__heading__vyqWX" id="footer-title-support">Support</h3><ul class="LinkColumn-module__list__q5Tn1"><li class="LinkColumn-module__item__nrsNE"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://docs.github.com" data-analytics-event="{"location":"footer","tag":"link","action":"docs","context":"support"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Link-module__Link--label___jM8Ty">Docs</span></a></li><li class="LinkColumn-module__item__nrsNE"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://github.community" data-analytics-event="{"location":"footer","tag":"link","action":"community","context":"support"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Link-module__Link--label___jM8Ty">Community Forum</span></a></li><li class="LinkColumn-module__item__nrsNE"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://github.com/services" data-analytics-event="{"location":"footer","tag":"link","action":"services","context":"support"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Link-module__Link--label___jM8Ty">Professional Services</span></a></li><li class="LinkColumn-module__item__nrsNE"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="/enterprise/premium-support" data-analytics-event="{"location":"footer","tag":"link","action":"premium_support","context":"support"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Link-module__Link--label___jM8Ty">Premium Support</span></a></li><li class="LinkColumn-module__item__nrsNE"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://skills.github.com" data-analytics-event="{"location":"footer","tag":"link","action":"skills","context":"support"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Link-module__Link--label___jM8Ty">Skills</span></a></li><li class="LinkColumn-module__item__nrsNE"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://www.githubstatus.com" data-analytics-event="{"location":"footer","tag":"link","action":"status","context":"support"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Link-module__Link--label___jM8Ty">Status</span></a></li><li class="LinkColumn-module__item__nrsNE"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://support.github.com?tags=dotcom-footer" data-analytics-event="{"location":"footer","tag":"link","action":"contact_github","context":"support"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Link-module__Link--label___jM8Ty">Contact GitHub</span></a></li><li class="LinkColumn-module__item__nrsNE"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="/git-guides" data-analytics-event="{"location":"footer","tag":"link","action":"what_is_git","context":"support"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Link-module__Link--label___jM8Ty">What is Git?</span></a></li><li class="LinkColumn-module__item__nrsNE"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="/sitemap" data-analytics-event="{"location":"footer","tag":"link","action":"sitemap","context":"support"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Link-module__Link--label___jM8Ty">Sitemap</span></a></li></ul></nav><nav class="LinkColumn-module__column__vXgUS" aria-labelledby="footer-title-company"><h3 class="Primer_Brand__Heading-module__Heading___fudyh Primer_Brand__Heading-module__Heading-font--monospace___wf5_H Primer_Brand__Heading-module__Heading--6___QHTZH Primer_Brand__Heading-module__Heading--textWrap-balance___XJ9OD LinkColumn-module__heading__vyqWX" id="footer-title-company">Company</h3><ul class="LinkColumn-module__list__q5Tn1"><li class="LinkColumn-module__item__nrsNE"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="/about" data-analytics-event="{"location":"footer","tag":"link","action":"about","context":"company"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Link-module__Link--label___jM8Ty">About</span></a></li><li class="LinkColumn-module__item__nrsNE"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="/why-github" data-analytics-event="{"location":"footer","tag":"link","action":"why_github","context":"company"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Link-module__Link--label___jM8Ty">Why GitHub</span></a></li><li class="LinkColumn-module__item__nrsNE"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="/customer-stories?type=enterprise" data-analytics-event="{"location":"footer","tag":"link","action":"customer_stories","context":"company"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Link-module__Link--label___jM8Ty">Customer Stories</span></a></li><li class="LinkColumn-module__item__nrsNE"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://github.blog" data-analytics-event="{"location":"footer","tag":"link","action":"blog","context":"company"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Link-module__Link--label___jM8Ty">Blog</span></a></li><li class="LinkColumn-module__item__nrsNE"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="/readme" data-analytics-event="{"location":"footer","tag":"link","action":"readme","context":"company"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Link-module__Link--label___jM8Ty">The ReadME Project</span></a></li><li class="LinkColumn-module__item__nrsNE"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://github.careers" data-analytics-event="{"location":"footer","tag":"link","action":"careers","context":"company"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Link-module__Link--label___jM8Ty">Careers</span></a></li><li class="LinkColumn-module__item__nrsNE"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="/newsroom" data-analytics-event="{"location":"footer","tag":"link","action":"newsroom","context":"company"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Link-module__Link--label___jM8Ty">Newsroom</span></a></li><li class="LinkColumn-module__item__nrsNE"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="/about/diversity" data-analytics-event="{"location":"footer","tag":"link","action":"inclusion","context":"company"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Link-module__Link--label___jM8Ty">Inclusion</span></a></li><li class="LinkColumn-module__item__nrsNE"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://socialimpact.github.com" data-analytics-event="{"location":"footer","tag":"link","action":"social_impact","context":"company"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Link-module__Link--label___jM8Ty">Social Impact</span></a></li><li class="LinkColumn-module__item__nrsNE"><a class="Primer_Brand__Link-module__Link___lF11y Primer_Brand__Link-module__Link--default___VRVW0" href="https://thegithubshop.com" data-analytics-event="{"location":"footer","tag":"link","action":"shop","context":"company"}"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Link-module__Link--label___jM8Ty">Shop</span></a></li></ul></nav></div></div></div><div class="SubFooter-module__bar__MCrz3"><div class="SubFooter-module__container__zWjah"><nav aria-label="Legal and Resource Links" class="SubFooter-module__legal__ihBjH"><ul class="SubFooter-module__legalList__W482t"><li class="SubFooter-module__copyright__jBUrS"><time dateTime="2026">© 2026 GitHub, Inc.</time></li><li><a href="https://docs.github.com/site-policy/github-terms/github-terms-of-service" class="SubFooter-module__legalLink__Y0jbc">Terms</a></li><li><a href="https://docs.github.com/site-policy/privacy-policies/github-general-privacy-statement" class="SubFooter-module__legalLink__Y0jbc">Privacy</a></li><li><cookie-consent-link><button type="button" class="SubFooter-module__legalLink__Y0jbc" data-action="click:cookie-consent-link#showConsentManagement" data-analytics-event="{"location":"footer","tag":"link","action":"cookies","context":"subfooter"}">Manage cookies</button></cookie-consent-link></li><li><cookie-consent-link><button type="button" class="SubFooter-module__legalLink__Y0jbc" data-action="click:cookie-consent-link#showConsentManagement" data-analytics-event="{"location":"footer","tag":"link","action":"dont_share_info","context":"subfooter"}">Do not share my personal information</button></cookie-consent-link></li></ul></nav><div class="SubFooter-module__socialAndLocale__Kl140"><nav aria-label="GitHub's Social Media Links"><ul class="SocialLinks-module__list__kkyUo"><li><a href="https://www.linkedin.com/company/github" class="SocialLinks-module__iconLink__TSxai" data-analytics-event="{"category":"Footer","action":"go to Linkedin","label":"text:linkedin"}"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 19 18" width="19" height="18" aria-hidden="true" focusable="false" class="SocialLinks-module__icon__GnyEV"><path d="M3.94 2A2 2 0 1 1 2 0a2 2 0 0 1 1.94 2zM4 5.48H0V18h4zm6.32 0H6.34V18h3.94v-6.57c0-3.66 4.77-4 4.77 0V18H19v-7.93c0-6.17-7.06-5.94-8.72-2.91z" fill="currentColor"></path></svg><span class="visually-hidden">GitHub on LinkedIn</span></a></li><li><a href="https://www.instagram.com/github" class="SocialLinks-module__iconLink__TSxai" data-analytics-event="{"category":"Footer","action":"go to Instagram","label":"text:instagram"}"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="18" height="18" aria-hidden="true" focusable="false" class="SocialLinks-module__icon__GnyEV"><path d="M12 0C8.74 0 8.333.015 7.053.072 5.775.132 4.905.333 4.14.63c-.789.306-1.459.717-2.126 1.384S.935 3.35.63 4.14C.333 4.905.131 5.775.072 7.053.012 8.333 0 8.74 0 12s.015 3.667.072 4.947c.06 1.277.261 2.148.558 2.913.306.788.717 1.459 1.384 2.126.667.666 1.336 1.079 2.126 1.384.766.296 1.636.499 2.913.558C8.333 23.988 8.74 24 12 24s3.667-.015 4.947-.072c1.277-.06 2.148-.262 2.913-.558.788-.306 1.459-.718 2.126-1.384.666-.667 1.079-1.335 1.384-2.126.296-.765.499-1.636.558-2.913.06-1.28.072-1.687.072-4.947s-.015-3.667-.072-4.947c-.06-1.277-.262-2.149-.558-2.913-.306-.789-.718-1.459-1.384-2.126C21.319 1.347 20.651.935 19.86.63c-.765-.297-1.636-.499-2.913-.558C15.667.012 15.26 0 12 0zm0 2.16c3.203 0 3.585.016 4.85.071 1.17.055 1.805.249 2.227.415.562.217.96.477 1.382.896.419.42.679.819.896 1.381.164.422.36 1.057.413 2.227.057 1.266.07 1.646.07 4.85s-.015 3.585-.074 4.85c-.061 1.17-.256 1.805-.421 2.227-.224.562-.479.96-.899 1.382-.419.419-.824.679-1.38.896-.42.164-1.065.36-2.235.413-1.274.057-1.649.07-4.859.07-3.211 0-3.586-.015-4.859-.074-1.171-.061-1.816-.256-2.236-.421-.569-.224-.96-.479-1.379-.899-.421-.419-.69-.824-.9-1.38-.165-.42-.359-1.065-.42-2.235-.045-1.26-.061-1.649-.061-4.844 0-3.196.016-3.586.061-4.861.061-1.17.255-1.814.42-2.234.21-.57.479-.96.9-1.381.419-.419.81-.689 1.379-.898.42-.166 1.051-.361 2.221-.421 1.275-.045 1.65-.06 4.859-.06l.045.03zm0 3.678c-3.405 0-6.162 2.76-6.162 6.162 0 3.405 2.76 6.162 6.162 6.162 3.405 0 6.162-2.76 6.162-6.162 0-3.405-2.76-6.162-6.162-6.162zM12 16c-2.21 0-4-1.79-4-4s1.79-4 4-4 4 1.79 4 4-1.79 4-4 4zm7.846-10.405c0 .795-.646 1.44-1.44 1.44-.795 0-1.44-.646-1.44-1.44 0-.794.646-1.439 1.44-1.439.793-.001 1.44.645 1.44 1.439z" fill="currentColor"></path></svg><span class="visually-hidden">GitHub on Instagram</span></a></li><li><a href="https://www.youtube.com/github" class="SocialLinks-module__iconLink__TSxai" data-analytics-event="{"category":"Footer","action":"go to YouTube","label":"text:youtube"}"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 19.17 13.6" width="23" height="16" aria-hidden="true" focusable="false" class="SocialLinks-module__icon__GnyEV"><path d="M18.77 2.13A2.4 2.4 0 0 0 17.09.42C15.59 0 9.58 0 9.58 0a57.55 57.55 0 0 0-7.5.4A2.49 2.49 0 0 0 .39 2.13 26.27 26.27 0 0 0 0 6.8a26.15 26.15 0 0 0 .39 4.67 2.43 2.43 0 0 0 1.69 1.71c1.52.42 7.5.42 7.5.42a57.69 57.69 0 0 0 7.51-.4 2.4 2.4 0 0 0 1.68-1.71 25.63 25.63 0 0 0 .4-4.67 24 24 0 0 0-.4-4.69zM7.67 9.71V3.89l5 2.91z" fill="currentColor"></path></svg><span class="visually-hidden">GitHub on YouTube</span></a></li><li><a href="https://x.com/github" class="SocialLinks-module__iconLink__TSxai" data-analytics-event="{"category":"Footer","action":"go to X","label":"text:x"}"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1200 1227" width="16" height="16" aria-hidden="true" focusable="false" class="SocialLinks-module__icon__GnyEV"><path d="M714.163 519.284 1160.89 0h-105.86L667.137 450.887 357.328 0H0l468.492 681.821L0 1226.37h105.866l409.625-476.152 327.181 476.152H1200L714.137 519.284h.026ZM569.165 687.828l-47.468-67.894-377.686-540.24h162.604l304.797 435.991 47.468 67.894 396.2 566.721H892.476L569.165 687.854v-.026Z" fill="currentColor"></path></svg><span class="visually-hidden">GitHub on X</span></a></li><li><a href="https://www.tiktok.com/@github" class="SocialLinks-module__iconLink__TSxai" data-analytics-event="{"category":"Footer","action":"go to tiktok","label":"text:tiktok"}"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="18" height="18" aria-hidden="true" focusable="false" class="SocialLinks-module__icon__GnyEV"><path d="M12.525.02c1.31-.02 2.61-.01 3.91-.02.08 1.53.63 3.09 1.75 4.17 1.12 1.11 2.7 1.62 4.24 1.79v4.03c-1.44-.05-2.89-.35-4.2-.97-.57-.26-1.1-.59-1.62-.93-.01 2.92.01 5.84-.02 8.75-.08 1.4-.54 2.79-1.35 3.94-1.31 1.92-3.58 3.17-5.91 3.21-1.43.08-2.86-.31-4.08-1.03-2.02-1.19-3.44-3.37-3.65-5.71-.02-.5-.03-1-.01-1.49.18-1.9 1.12-3.72 2.58-4.96 1.66-1.44 3.98-2.13 6.15-1.72.02 1.48-.04 2.96-.04 4.44-.99-.32-2.15-.23-3.02.37-.63.41-1.11 1.04-1.36 1.75-.21.51-.15 1.07-.14 1.61.24 1.64 1.82 3.02 3.5 2.87 1.12-.01 2.19-.66 2.77-1.61.19-.33.4-.67.41-1.06.1-1.79.06-3.57.07-5.36.01-4.03-.01-8.05.02-12.07z" fill="currentColor"></path></svg><span class="visually-hidden">GitHub on TikTok</span></a></li><li><a href="https://www.twitch.tv/github" class="SocialLinks-module__iconLink__TSxai" data-analytics-event="{"category":"Footer","action":"go to Twitch","label":"text:twitch"}"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="18" height="18" aria-hidden="true" focusable="false" class="SocialLinks-module__icon__GnyEV"><path d="M11.571 4.714h1.715v5.143H11.57zm4.715 0H18v5.143h-1.714zM6 0L1.714 4.286v15.428h5.143V24l4.286-4.286h3.428L22.286 12V0zm14.571 11.143l-3.428 3.428h-3.429l-3 3v-3H6.857V1.714h13.714Z" fill="currentColor"></path></svg><span class="visually-hidden">GitHub on Twitch</span></a></li><li><a href="https://github.com/github" class="SocialLinks-module__iconLink__TSxai" data-analytics-event="{"category":"Footer","action":"go to github's org","label":"text:github"}"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 98 96" width="20" height="20" aria-hidden="true" focusable="false" class="SocialLinks-module__icon__GnyEV"><path fill="currentColor" d="M48.854 0C21.839 0 0 22 0 49.217c0 21.756 13.993 40.172 33.405 46.69 2.427.49 3.316-1.059 3.316-2.362 0-1.141-.08-5.052-.08-9.127-13.59 2.934-16.42-5.867-16.42-5.867-2.184-5.704-5.42-7.17-5.42-7.17-4.448-3.015.324-3.015.324-3.015 4.934.326 7.523 5.052 7.523 5.052 4.367 7.496 11.404 5.378 14.235 4.074.404-3.178 1.699-5.378 3.074-6.6-10.839-1.141-22.243-5.378-22.243-24.283 0-5.378 1.94-9.778 5.014-13.2-.485-1.222-2.184-6.275.486-13.038 0 0 4.125-1.304 13.426 5.052a46.97 46.97 0 0 1 12.214-1.63c4.125 0 8.33.571 12.213 1.63 9.302-6.356 13.427-5.052 13.427-5.052 2.67 6.763.97 11.816.485 13.038 3.155 3.422 5.015 7.822 5.015 13.2 0 18.905-11.404 23.06-22.324 24.283 1.78 1.548 3.316 4.481 3.316 9.126 0 6.6-.08 11.897-.08 13.526 0 1.304.89 2.853 3.316 2.364 19.412-6.52 33.405-24.935 33.405-46.691C97.707 22 75.788 0 48.854 0z"></path></svg><span class="visually-hidden">GitHub’s organization on GitHub</span></a></li></ul></nav><div id="_R_ad_" class="Primer_Brand__ActionMenu-module__ActionMenu___xLxGU" data-testid="ActionMenu"><button class="Primer_Brand__Button-module__Button___scH9Z Primer_Brand__Button-module__Button--secondary___gHnw_ Primer_Brand__Button-module__Button--size-small___zQrEw Primer_Brand__ActionMenu-module__ActionMenu__button___vFLAF Primer_Brand__ActionMenu-module__ActionMenu__button--small___UAUPB Primer_Brand__ActionMenu-module__ActionMenu__button--default___heDoV" id="_R_ad_-button" aria-haspopup="true" aria-expanded="false" data-testid="ActionMenu-button" aria-label="English - Select language"><span class="Primer_Brand__Button-module__Button__text___ED0bX"><span class="Primer_Brand__Text-module__Text___XeGJJ Primer_Brand__Text-module__Text-font--mona-sans___a8XJD Primer_Brand__Text-module__Text--default___GhPh_ Primer_Brand__Text-module__Text--100___B2ueX Primer_Brand__Text-module__Text--weight-medium___qJKf_ Primer_Brand__Button-module__Button--label___qrkyz Primer_Brand__Button-module__Button--label-secondary___eJ0_a"><span><span class="LocaleSelector-module__triggerContent__lli5v"><svg data-component="Octicon" aria-hidden="true" focusable="false" class="octicon octicon-globe" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0ZM5.78 8.75a9.64 9.64 0 0 0 1.363 4.177c.255.426.542.832.857 1.215.245-.296.551-.705.857-1.215A9.64 9.64 0 0 0 10.22 8.75Zm4.44-1.5a9.64 9.64 0 0 0-1.363-4.177c-.307-.51-.612-.919-.857-1.215a9.927 9.927 0 0 0-.857 1.215A9.64 9.64 0 0 0 5.78 7.25Zm-5.944 1.5H1.543a6.507 6.507 0 0 0 4.666 5.5c-.123-.181-.24-.365-.352-.552-.715-1.192-1.437-2.874-1.581-4.948Zm-2.733-1.5h2.733c.144-2.074.866-3.756 1.58-4.948.12-.197.237-.381.353-.552a6.507 6.507 0 0 0-4.666 5.5Zm10.181 1.5c-.144 2.074-.866 3.756-1.58 4.948-.12.197-.237.381-.353.552a6.507 6.507 0 0 0 4.666-5.5Zm2.733-1.5a6.507 6.507 0 0 0-4.666-5.5c.123.181.24.365.353.552.714 1.192 1.436 2.874 1.58 4.948Z"></path></svg><span class="LocaleSelector-module__triggerLabel__IDKuJ">English</span></span></span></span></span><span class="Primer_Brand__Button-module__Button__trailing-visual___5i3xR" data-testid="Button-trailing-visual"><svg aria-hidden="true" focusable="false" class="octicon octicon-chevron-down Primer_Brand__Button-module__Button__icon-visual____qybb" viewBox="0 0 16 16" width="16" height="16" fill="currentColor" display="inline-block" overflow="visible" style="vertical-align:text-bottom"><path d="M12.78 5.22a.749.749 0 0 1 0 1.06l-4.25 4.25a.749.749 0 0 1-1.06 0L3.22 6.28a.749.749 0 1 1 1.06-1.06L8 8.939l3.72-3.719a.749.749 0 0 1 1.06 0Z"></path></svg></span></button></div></div></div></div></footer></div></div>
|
||
</react-partial>
|
||
|
||
|
||
|
||
|
||
<ghcc-consent id="ghcc" class="position-fixed bottom-0 left-0" style="z-index: 999999"
|
||
data-locale="en"
|
||
data-initial-cookie-consent-allowed=""
|
||
data-cookie-consent-required="false"
|
||
></ghcc-consent>
|
||
|
||
|
||
<fullstory-capture data-fs-script-domain="https://github.githubassets.com">
|
||
</fullstory-capture>
|
||
|
||
|
||
|
||
|
||
<div id="ajax-error-message" class="ajax-error-message flash flash-error" hidden>
|
||
<svg aria-hidden="true" data-component="Octicon" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-alert">
|
||
<path d="M6.457 1.047c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0 1 14.082 15H1.918a1.75 1.75 0 0 1-1.543-2.575Zm1.763.707a.25.25 0 0 0-.44 0L1.698 13.132a.25.25 0 0 0 .22.368h12.164a.25.25 0 0 0 .22-.368Zm.53 3.996v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"></path>
|
||
</svg>
|
||
<button type="button" class="flash-close js-ajax-error-dismiss" aria-label="Dismiss error">
|
||
<svg aria-hidden="true" data-component="Octicon" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-x">
|
||
<path d="M3.72 3.72a.75.75 0 0 1 1.06 0L8 6.94l3.22-3.22a.749.749 0 0 1 1.275.326.749.749 0 0 1-.215.734L9.06 8l3.22 3.22a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215L8 9.06l-3.22 3.22a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L6.94 8 3.72 4.78a.75.75 0 0 1 0-1.06Z"></path>
|
||
</svg>
|
||
</button>
|
||
You can’t perform that action at this time.
|
||
</div>
|
||
|
||
<template id="site-details-dialog">
|
||
<details class="details-reset details-overlay details-overlay-dark lh-default color-fg-default hx_rsm" open>
|
||
<summary role="button" aria-label="Close dialog"></summary>
|
||
<details-dialog class="Box Box--overlay d-flex flex-column anim-fade-in fast hx_rsm-dialog hx_rsm-modal">
|
||
<button class="Box-btn-octicon m-0 btn-octicon position-absolute right-0 top-0" type="button" aria-label="Close dialog" data-close-dialog>
|
||
<svg aria-hidden="true" data-component="Octicon" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-x">
|
||
<path d="M3.72 3.72a.75.75 0 0 1 1.06 0L8 6.94l3.22-3.22a.749.749 0 0 1 1.275.326.749.749 0 0 1-.215.734L9.06 8l3.22 3.22a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215L8 9.06l-3.22 3.22a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L6.94 8 3.72 4.78a.75.75 0 0 1 0-1.06Z"></path>
|
||
</svg>
|
||
</button>
|
||
<div class="octocat-spinner tmp-my-6 js-details-dialog-spinner"></div>
|
||
</details-dialog>
|
||
</details>
|
||
</template>
|
||
|
||
<div class="Popover js-hovercard-content position-absolute" style="display: none; outline: none;">
|
||
<div class="Popover-message Popover-message--bottom-left Popover-message--large Box color-shadow-large" style="width:360px;">
|
||
</div>
|
||
</div>
|
||
|
||
<template id="snippet-clipboard-copy-button">
|
||
<div class="zeroclipboard-container position-absolute right-0 top-0">
|
||
<clipboard-copy aria-label="Copy code to clipboard" class="ClipboardButton btn js-clipboard-copy m-2 p-0" data-copy-feedback="Copied!" data-tooltip-direction="w">
|
||
<svg aria-hidden="true" data-component="Octicon" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-copy js-clipboard-copy-icon m-2 tmp-m-2">
|
||
<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 0 1 0 1.5h-1.5a.25.25 0 0 0-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 0 0 .25-.25v-1.5a.75.75 0 0 1 1.5 0v1.5A1.75 1.75 0 0 1 9.25 16h-7.5A1.75 1.75 0 0 1 0 14.25Z"></path><path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0 1 14.25 11h-7.5A1.75 1.75 0 0 1 5 9.25Zm1.75-.25a.25.25 0 0 0-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 0 0 .25-.25v-7.5a.25.25 0 0 0-.25-.25Z"></path>
|
||
</svg>
|
||
<svg aria-hidden="true" data-component="Octicon" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-check js-clipboard-check-icon color-fg-success d-none m-2 tmp-m-2">
|
||
<path d="M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z"></path>
|
||
</svg>
|
||
</clipboard-copy>
|
||
</div>
|
||
</template>
|
||
<template id="snippet-clipboard-copy-button-unpositioned">
|
||
<div class="zeroclipboard-container">
|
||
<clipboard-copy aria-label="Copy code to clipboard" class="ClipboardButton btn btn-invisible js-clipboard-copy m-2 p-0 d-flex flex-justify-center flex-items-center" data-copy-feedback="Copied!" data-tooltip-direction="w">
|
||
<svg aria-hidden="true" data-component="Octicon" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-copy js-clipboard-copy-icon">
|
||
<path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 0 1 0 1.5h-1.5a.25.25 0 0 0-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 0 0 .25-.25v-1.5a.75.75 0 0 1 1.5 0v1.5A1.75 1.75 0 0 1 9.25 16h-7.5A1.75 1.75 0 0 1 0 14.25Z"></path><path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0 1 14.25 11h-7.5A1.75 1.75 0 0 1 5 9.25Zm1.75-.25a.25.25 0 0 0-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 0 0 .25-.25v-7.5a.25.25 0 0 0-.25-.25Z"></path>
|
||
</svg>
|
||
<svg aria-hidden="true" data-component="Octicon" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-check js-clipboard-check-icon color-fg-success d-none">
|
||
<path d="M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z"></path>
|
||
</svg>
|
||
</clipboard-copy>
|
||
</div>
|
||
</template>
|
||
|
||
|
||
|
||
|
||
</div>
|
||
<div id="js-global-screen-reader-notice" class="sr-only mt-n1" aria-live="polite" aria-atomic="true" ></div>
|
||
<div id="js-global-screen-reader-notice-assertive" class="sr-only mt-n1" aria-live="assertive" aria-atomic="true"></div>
|
||
</body>
|
||
</html>
|
||
|
||
|