diff options
Diffstat (limited to 'about/showcase')
| -rw-r--r-- | about/showcase/debroid/image-1.png | 140 | ||||
| -rw-r--r-- | about/showcase/hypr/image-1.svg | 425 |
2 files changed, 496 insertions, 69 deletions
diff --git a/about/showcase/debroid/image-1.png b/about/showcase/debroid/image-1.png index c21e60d9..9b8c1524 100644 --- a/about/showcase/debroid/image-1.png +++ b/about/showcase/debroid/image-1.png @@ -44,64 +44,64 @@ } </style> - <link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/primer-primitives-6da842159062d25e.css" /> - <link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/primer-b55097560d244c08.css" /> - <link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/global-52276e82f63bb403.css" /> - <link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/github-6e7c458caf1e80bb.css" /> + <link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/primer-primitives-10bf9dd67e3d70bd.css" /> + <link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/primer-0fcd9af82350aeda.css" /> + <link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/global-a40b6ece39d70d4a.css" /> + <link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/github-b02a278369fa132e.css" /> - <script type="application/json" id="client-env">{"locale":"en","featureFlags":["a11y_status_checks_ruleset","actions_custom_images_public_preview_visibility","actions_custom_images_storage_billing_ui_visibility","actions_image_version_event","actions_scheduled_workflow_timezone_enabled","alternate_user_config_repo","arianotify_comprehensive_migration","batch_suggested_changes","codespaces_prebuild_region_target_update","coding_agent_model_selection","coding_agent_model_selection_all_skus","contentful_primer_code_blocks","copilot_agent_image_upload","copilot_agent_snippy","copilot_api_agentic_issue_marshal_yaml","copilot_ask_mode_dropdown","copilot_chat_attach_multiple_images","copilot_chat_clear_model_selection_for_default_change","copilot_chat_enable_tool_call_logs","copilot_chat_file_redirect","copilot_chat_input_commands","copilot_chat_opening_thread_switch","copilot_chat_reduce_quota_checks","copilot_chat_repository_picker","copilot_chat_search_bar_redirect","copilot_chat_selection_attachments","copilot_chat_vision_in_claude","copilot_chat_vision_preview_gate","copilot_cli_install_cta","copilot_code_review_batch_apply_suggestions","copilot_coding_agent_task_response","copilot_custom_copilots","copilot_custom_copilots_feature_preview","copilot_duplicate_thread","copilot_extensions_hide_in_dotcom_chat","copilot_extensions_removal_on_marketplace","copilot_features_sql_server_logo","copilot_features_zed_logo","copilot_file_block_ref_matching","copilot_ftp_hyperspace_upgrade_prompt","copilot_icebreakers_experiment_dashboard","copilot_icebreakers_experiment_hyperspace","copilot_immersive_embedded","copilot_immersive_job_result_preview","copilot_immersive_layout_routes","copilot_immersive_structured_model_picker","copilot_immersive_task_hyperlinking","copilot_immersive_task_within_chat_thread","copilot_mc_cli_resume_any_users_task","copilot_mission_control_always_send_integration_id","copilot_mission_control_cli_resume_with_task_id","copilot_mission_control_decoupled_mode_agent_tooltip","copilot_mission_control_initial_data_spinner","copilot_mission_control_scroll_to_bottom_button","copilot_mission_control_task_alive_updates","copilot_mission_control_use_task_name","copilot_org_policy_page_focus_mode","copilot_redirect_header_button_to_agents","copilot_resource_panel","copilot_scroll_preview_tabs","copilot_share_active_subthread","copilot_spaces_ga","copilot_spaces_individual_policies_ga","copilot_spaces_pagination","copilot_spark_empty_state","copilot_spark_handle_nil_friendly_name","copilot_swe_agent_hide_model_picker_if_only_auto","copilot_swe_agent_pr_comment_model_picker","copilot_swe_agent_use_subagents","copilot_task_api_github_rest_style","copilot_unconfigured_is_inherited","copilot_usage_metrics_ga","copilot_workbench_slim_line_top_tabs","custom_instructions_file_references","custom_properties_consolidate_default_value_input","dashboard_add_updated_desc","dashboard_indexeddb_caching","dashboard_lists_max_age_filter","dashboard_universe_2025_feedback_dialog","disable_soft_navigate_turbo_visit","flex_cta_groups_mvp","global_nav_react","global_nav_ui_commands","hyperspace_2025_logged_out_batch_1","hyperspace_2025_logged_out_batch_2","hyperspace_2025_logged_out_batch_3","ipm_global_transactional_message_agents","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_global_search","issue_fields_timeline_events","issue_fields_visibility_settings","issue_form_upload_field_paste","issues_dashboard_inp_optimization","issues_dashboard_semantic_search","issues_diff_based_label_updates","issues_expanded_file_types","issues_index_semantic_search","issues_lazy_load_comment_box_suggestions","issues_react_bots_timeline_pagination","issues_react_chrome_container_query_fix","issues_react_low_quality_comment_warning","issues_react_prohibit_title_fallback","landing_pages_ninetailed","landing_pages_web_vitals_tracking","lifecycle_label_name_updates","marketing_pages_search_explore_provider","memex_default_issue_create_repository","memex_live_update_hovercard","memex_mwl_filter_field_delimiter","merge_status_header_feedback","mission_control_retry_on_401","notifications_menu_defer_labels","oauth_authorize_clickjacking_protection","open_agent_session_in_vscode_insiders","open_agent_session_in_vscode_stable","primer_react_css_has_selector_perf","primer_react_spinner_synchronize_animations","prs_conversations_react","prx_merge_status_button_alt_logic","pulls_add_archived_false","ruleset_deletion_confirmation","sample_network_conn_type","session_logs_ungroup_reasoning_text","site_calculator_actions_2025","site_features_copilot_universe","site_homepage_collaborate_video","spark_prompt_secret_scanning","spark_server_connection_status","suppress_automated_browser_vitals","suppress_non_representative_vitals","viewscreen_sandbox","webp_support","workbench_store_readonly"],"copilotApiOverrideUrl":"https://api.githubcopilot.com"}</script> + <script type="application/json" id="client-env">{"locale":"en","featureFlags":["a11y_status_checks_ruleset","actions_custom_images_storage_billing_ui_visibility","actions_image_version_event","actions_scheduled_workflow_timezone_enabled","alternate_user_config_repo","arianotify_comprehensive_migration","batch_suggested_changes","billing_discount_threshold_notification","close_pr_side_panel","codespaces_prebuild_region_target_update","coding_agent_model_selection","coding_agent_model_selection_all_skus","contentful_primer_code_blocks","copilot_agent_image_upload","copilot_agent_snippy","copilot_api_agentic_issue_marshal_yaml","copilot_ask_mode_dropdown","copilot_chat_attach_multiple_images","copilot_chat_clear_model_selection_for_default_change","copilot_chat_enable_tool_call_logs","copilot_chat_explain_error_user_model","copilot_chat_file_redirect","copilot_chat_input_commands","copilot_chat_opening_thread_switch","copilot_chat_reduce_quota_checks","copilot_chat_repository_picker","copilot_chat_search_bar_redirect","copilot_chat_selection_attachments","copilot_chat_vision_in_claude","copilot_chat_vision_preview_gate","copilot_cli_install_cta","copilot_code_review_batch_apply_suggestions","copilot_coding_agent_task_response","copilot_custom_copilots","copilot_custom_copilots_feature_preview","copilot_duplicate_thread","copilot_extensions_hide_in_dotcom_chat","copilot_extensions_removal_on_marketplace","copilot_features_sql_server_logo","copilot_features_zed_logo","copilot_file_block_ref_matching","copilot_ftp_hyperspace_upgrade_prompt","copilot_icebreakers_experiment_dashboard","copilot_icebreakers_experiment_hyperspace","copilot_immersive_embedded","copilot_immersive_file_block_transition_open","copilot_immersive_file_preview_keep_mounted","copilot_immersive_job_result_preview","copilot_immersive_layout_routes","copilot_immersive_structured_model_picker","copilot_immersive_task_hyperlinking","copilot_immersive_task_within_chat_thread","copilot_mc_cli_resume_any_users_task","copilot_mission_control_always_send_integration_id","copilot_mission_control_cli_resume_with_task_id","copilot_mission_control_decoupled_mode_agent_tooltip","copilot_mission_control_initial_data_spinner","copilot_mission_control_scroll_to_bottom_button","copilot_mission_control_task_alive_updates","copilot_mission_control_use_task_name","copilot_org_policy_page_focus_mode","copilot_redirect_header_button_to_agents","copilot_resource_panel","copilot_scroll_preview_tabs","copilot_share_active_subthread","copilot_spaces_ga","copilot_spaces_individual_policies_ga","copilot_spaces_pagination","copilot_spark_empty_state","copilot_spark_handle_nil_friendly_name","copilot_swe_agent_hide_model_picker_if_only_auto","copilot_swe_agent_pr_comment_model_picker","copilot_swe_agent_use_subagents","copilot_task_api_github_rest_style","copilot_unconfigured_is_inherited","copilot_usage_metrics_ga","copilot_workbench_slim_line_top_tabs","custom_instructions_file_references","custom_properties_consolidate_default_value_input","dashboard_add_updated_desc","dashboard_indexeddb_caching","dashboard_lists_max_age_filter","dashboard_universe_2025_feedback_dialog","flex_cta_groups_mvp","global_nav_react","global_nav_unified_payload","hyperspace_2025_logged_out_batch_1","hyperspace_2025_logged_out_batch_2","hyperspace_2025_logged_out_batch_3","ipm_global_transactional_message_agents","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_cca_modal_open","issue_cca_visualization","issue_fields_global_search","issue_fields_visibility_settings","issues_dashboard_inp_optimization","issues_diff_based_label_updates","issues_expanded_file_types","issues_index_semantic_search","issues_lazy_load_comment_box_suggestions","issues_react_bots_timeline_pagination","issues_react_chrome_container_query_fix","issues_react_prohibit_title_fallback","issues_search_type_gql","landing_pages_ninetailed","landing_pages_web_vitals_tracking","lifecycle_label_name_updates","marketing_pages_search_explore_provider","memex_default_issue_create_repository","memex_live_update_hovercard","memex_mwl_filter_field_delimiter","merge_status_header_feedback","mission_control_retry_on_401","oauth_authorize_clickjacking_protection","open_agent_session_in_vscode_insiders","open_agent_session_in_vscode_stable","primer_react_action_menu_display_in_viewport_inside_dialog","primer_react_css_has_selector_perf","primer_react_spinner_synchronize_animations","prs_conversations_react","prx_merge_status_button_alt_logic","ruleset_deletion_confirmation","sample_network_conn_type","session_logs_ungroup_reasoning_text","site_features_copilot_universe","site_homepage_collaborate_video","spark_prompt_secret_scanning","spark_server_connection_status","suppress_automated_browser_vitals","suppress_non_representative_vitals","viewscreen_sandbox","webp_support","workbench_store_readonly"],"copilotApiOverrideUrl":"https://api.githubcopilot.com"}</script> <script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/high-contrast-cookie-6d9b25bb81324e28.js"></script> -<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/wp-runtime-56e3253ab3589561.js" defer="defer"></script> +<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/wp-runtime-b4f751402c890a20.js" defer="defer"></script> <script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/28839-c0b8ec9e4855e70d.js" defer="defer"></script> <script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/85924-d72bd3bf2ebf2b33.js" defer="defer"></script> -<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/34646-b8591bde7c6dfc95.js" defer="defer"></script> +<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/34646-5136272fb208a9a7.js" defer="defer"></script> <script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/environment-d875a2db42d84bc1.js" defer="defer"></script> <script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/runtime-helpers-9ca289a20b4287f3.js" defer="defer"></script> <script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/2966-7fae197fcc122033.js" defer="defer"></script> -<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/96232-9ad451468017b312.js" defer="defer"></script> +<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/96232-81264b2e484eeea3.js" defer="defer"></script> <script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/41013-98ec62b138074b3c.js" defer="defer"></script> <script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/51210-4f6b60f1e56caf0b.js" defer="defer"></script> <script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/77313-833d857459e22419.js" defer="defer"></script> -<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/95150-62e60f2748c6241e.js" defer="defer"></script> +<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/23039-9d3ed8a305267b36.js" defer="defer"></script> +<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/8601-bd8c9578beeca5fa.js" defer="defer"></script> <script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/46740-6ff37d25440dfd5f.js" defer="defer"></script> -<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/74071-fa61cd1f62507633.js" defer="defer"></script> -<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/github-elements-129990c381f1a17c.js" defer="defer"></script> -<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/element-registry-26a4ba47566b63f1.js" defer="defer"></script> -<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/react-core-1b7e0e8bea30ae82.js" defer="defer"></script> +<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/52375-7184639d75711668.js" defer="defer"></script> +<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/github-elements-17007c6e1a0ff4e7.js" defer="defer"></script> +<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/element-registry-676976fa82e31910.js" defer="defer"></script> +<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/react-core-eff3f3e27186f71c.js" defer="defer"></script> <script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/react-lib-3f8a185bb97e4f4c.js" defer="defer"></script> -<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/7053-059cc82f993d345a.js" defer="defer"></script> +<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/7053-9ff0fc016f8d6134.js" defer="defer"></script> <script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/79039-13dc534ba9c6a63e.js" defer="defer"></script> <script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/61110-91a6e672e6c52371.js" defer="defer"></script> <script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/2887-7374f895742e2de6.js" defer="defer"></script> -<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/26533-3b7304f75d999c48.js" defer="defer"></script> -<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/18728-82d661dfa4f3f257.js" defer="defer"></script> -<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/12734-bef5da8f594c610e.js" defer="defer"></script> +<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/26533-be3434b1ad736595.js" defer="defer"></script> +<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/97745-17bf40209ad1b441.js" defer="defer"></script> <script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/89155-cd29998a39b55887.js" defer="defer"></script> <script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/50686-203ca12c697307e6.js" defer="defer"></script> -<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/63225-709573646523acd4.js" defer="defer"></script> -<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/60481-2dd020b8c4505ee4.js" defer="defer"></script> +<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/46779-a5e6403e1f8c73d8.js" defer="defer"></script> <script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/46287-4caff6a8b1d9f9be.js" defer="defer"></script> <script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/2498-97555f2269e8a9bd.js" defer="defer"></script> -<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/57073-82b72117f7081d82.js" defer="defer"></script> -<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/15625-1fe1313c1426464a.js" defer="defer"></script> -<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/48527-f916f0db97fcaa0a.js" defer="defer"></script> -<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/28703-b65c10948d4038cd.js" defer="defer"></script> +<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/1108-d04e2e16dc98da37.js" defer="defer"></script> +<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/18597-6dc8f1f774696932.js" defer="defer"></script> +<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/15625-05373890466bf366.js" defer="defer"></script> +<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/48527-5de266b1da5c2e34.js" defer="defer"></script> +<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/28703-c1456f1aa61b245d.js" defer="defer"></script> <script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/99328-91354dc331fd4cdd.js" defer="defer"></script> -<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/9211-14ddcc73f1441433.js" defer="defer"></script> -<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/91184-962677183b5639ee.js" defer="defer"></script> -<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/97232-f296cf9f18a015f8.js" defer="defer"></script> -<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/87774-a49163e290691688.js" defer="defer"></script> +<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/37943-3c619d65dd869b67.js" defer="defer"></script> +<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/91184-657c34dc2b380c4c.js" defer="defer"></script> +<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/97232-829cc8b566d31458.js" defer="defer"></script> +<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/87774-cb19ae155ee3c918.js" defer="defer"></script> <script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/27493-4c94010ef4ae1e22.js" defer="defer"></script> -<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/56889-a22c1e3369fa0b5c.js" defer="defer"></script> -<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/2013-ba4f72f3bac703ac.js" defer="defer"></script> -<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/81564-b397683e312aecfa.js" defer="defer"></script> -<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/behaviors-37b783d7805ef831.js" defer="defer"></script> -<link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/react-core.014e3a1ebc051a2d.module.css" /> -<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/38302-3e712631658bb3b9.js" defer="defer"></script> -<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/notifications-global-26855372e0da920b.js" defer="defer"></script> +<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/56889-3812304955862655.js" defer="defer"></script> +<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/2013-126bbbb468be7e3b.js" defer="defer"></script> +<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/81564-fd44bec50cee3386.js" defer="defer"></script> +<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/behaviors-d3521afce6f6e9b2.js" defer="defer"></script> +<link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/react-core.364eade98ee7744f.module.css" /> +<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/81863-518132d704f3d667.js" defer="defer"></script> +<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/notifications-global-f520baa344c4ccaf.js" defer="defer"></script> <title>Page not found · GitHub · GitHub</title> @@ -111,13 +111,13 @@ <meta name="route-pattern" content="/:user_id/:repository/blob/*name(/*path)" data-turbo-transient> <meta name="route-controller" content="blob" data-turbo-transient> <meta name="route-action" content="show" data-turbo-transient> - <meta name="fetch-nonce" content="v2:56a54707-dfbc-3f80-eb08-03dad91cada5"> + <meta name="fetch-nonce" content="v2:5df110a7-f9a3-078e-6d34-94a0b1f0c5e9"> <meta name="current-catalog-service-hash" content="f3abb0cc802f3d7b95fc8762b94bdcb13bf39634c40c357301c4aa1d67a256fb"> - <meta name="request-id" content="9E4E:28D6A:106FA2C:ACB434:69BCFE37" data-pjax-transient="true"/><meta name="html-safe-nonce" content="96d60d5d9727997ed1809ead1a039cc114391568fa8c13f0159f1bc6ded96c84" data-pjax-transient="true"/><meta name="visitor-payload" content="eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiI5RTRFOjI4RDZBOjEwNkZBMkM6QUNCNDM0OjY5QkNGRTM3IiwidmlzaXRvcl9pZCI6IjUxODE3MDcyNDk1MTQ1NzMzNSIsInJlZ2lvbl9lZGdlIjoiZnJhIiwicmVnaW9uX3JlbmRlciI6ImZyYSJ9" data-pjax-transient="true"/><meta name="visitor-hmac" content="64ba7f323a69559624baa93f4c3f4d4ee8af77b4f9c62586b24bd980bf18b94f" data-pjax-transient="true"/> + <meta name="request-id" content="DC04:289065:1BC60B:128522:69C6A21A" data-pjax-transient="true"/><meta name="html-safe-nonce" content="f0b879d47af01f8105d69d06e06d371f8f0a4dca0045664fe3761b5cf9b975bb" data-pjax-transient="true"/><meta name="visitor-payload" content="eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJEQzA0OjI4OTA2NToxQkM2MEI6MTI4NTIyOjY5QzZBMjFBIiwidmlzaXRvcl9pZCI6IjE4MDk2NjI3OTgzMzEwMDgyNiIsInJlZ2lvbl9lZGdlIjoiZnJhIiwicmVnaW9uX3JlbmRlciI6ImZyYSJ9" data-pjax-transient="true"/><meta name="visitor-hmac" content="22423299cc9746af07690b9b729907b048e64f393f9192622840bb7b0533a310" data-pjax-transient="true"/> @@ -197,14 +197,14 @@ <meta name="expected-hostname" content="github.com"> - <meta http-equiv="x-pjax-version" content="a144fb68e7a2f679e57fc5c861f8bf165a26e4cb09d9483af2601b007d62d38a" data-turbo-track="reload"> + <meta http-equiv="x-pjax-version" content="cf17f9cd0c2826af636b5d92bcc5280999fc1c7c8a7522f67cd8857fd5022331" data-turbo-track="reload"> <meta http-equiv="x-pjax-csp-version" content="568c098497d98702bac1642a2a853732a047a6ced28eabd3e15d50041a890235" data-turbo-track="reload"> - <meta http-equiv="x-pjax-css-version" content="14cd479141a7a67677424d0f1432004fdabb26007aa9de515c2dbc76e47cdf83" data-turbo-track="reload"> - <meta http-equiv="x-pjax-js-version" content="28f5c989f89b0f93124c54c1b0c0bf0e5566018ec12fda9d9575bea8d352aaa4" data-turbo-track="reload"> + <meta http-equiv="x-pjax-css-version" content="2a11dc2eae08fab707a6ec4f9b210809c57fcffc99ec34a2e6f0046296cc07e6" data-turbo-track="reload"> + <meta http-equiv="x-pjax-js-version" content="b0dfe89d9ed3408bd90c7350d12043a143faaeb41f604822fe4f0cbbadad8a07" data-turbo-track="reload"> <meta name="turbo-cache-control" content="no-preview" data-turbo-transient=""> - <link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/site-984d942ec490ca43.css" /> + <link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/site-4884328cf1d6633f.css" /> <link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/error-9736b9816c3df531.css" /> <meta name="is_logged_out_page" content="true"> @@ -223,7 +223,7 @@ <meta name="browser-errors-url" content="https://api.github.com/_private/browser/errors"> - <meta name="release" content="5cf4cd8238dd4bca380c8509ef2f055f0d68a990"> + <meta name="release" content="79ed70411a3c30c35d85b320055b2493d6c602b5"> <meta name="ui-target" content="full"> <link rel="mask-icon" href="https://github.githubassets.com/assets/pinned-octocat-093da3e6fa40.svg" color="#000000"> @@ -250,8 +250,8 @@ <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" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/primer-react-css.6dd722c034c861a4.module.css" /> -<link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/keyboard-shortcuts-dialog.3224476c3d142e24.module.css" /> + <link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/primer-react-css.a7c2e61315e78ba2.module.css" /> +<link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/keyboard-shortcuts-dialog.be67227d646883be.module.css" /> <react-partial partial-name="keyboard-shortcuts-dialog" @@ -274,8 +274,8 @@ <script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/46752-06df1a7bce5e9ba9.js" defer="defer"></script> -<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/93308-59bc73bd78f63174.js" defer="defer"></script> -<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/sessions-a663cbddb3957792.js" defer="defer"></script> +<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/86735-25b6ede3f731457a.js" defer="defer"></script> +<script crossorigin="anonymous" type="application/javascript" src="https://github.githubassets.com/assets/sessions-90539e93104f869a.js" defer="defer"></script> <style> /* Override primer focus outline color for marketing header dropdown links for better contrast */ @@ -308,7 +308,7 @@ aria-label="Homepage" data-analytics-event="{"category":"Marketing nav","action":"click to go to homepage","label":"ref_page:Marketing;ref_cta:Logomark;ref_loc:Header"}"> <svg height="32" aria-hidden="true" viewBox="0 0 24 24" version="1.1" width="32" data-view-component="true" class="octicon octicon-mark-github"> - <path d="M10.303 16.652c-2.837-.344-4.835-2.385-4.835-5.028 0-1.074.387-2.235 1.031-3.008-.279-.709-.236-2.214.086-2.837.86-.107 2.02.344 2.708.967.816-.258 1.676-.386 2.728-.386 1.053 0 1.913.128 2.686.365.666-.602 1.848-1.053 2.708-.946.3.581.344 2.085.064 2.815.688.817 1.053 1.913 1.053 3.03 0 2.643-1.998 4.641-4.877 5.006.73.473 1.224 1.504 1.224 2.686v2.235c0 .644.537 1.01 1.182.752 3.889-1.483 6.94-5.372 6.94-10.185 0-6.081-4.942-11.044-11.022-11.044-6.081 0-10.98 4.963-10.98 11.044a10.84 10.84 0 0 0 7.112 10.206c.58.215 1.139-.172 1.139-.752v-1.719a2.768 2.768 0 0 1-1.032.215c-1.418 0-2.256-.773-2.857-2.213-.237-.58-.495-.924-.989-.988-.258-.022-.344-.129-.344-.258 0-.258.43-.451.86-.451.623 0 1.16.386 1.719 1.181.43.623.881.903 1.418.903.537 0 .881-.194 1.375-.688.365-.365.645-.687.903-.902Z"></path> + <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> @@ -323,14 +323,14 @@ </a> <div class="AppHeader-appearanceSettings"> <react-partial-anchor> - <button data-target="react-partial-anchor.anchor" id="icon-button-e73de788-a39e-47bd-b818-7d902ba6e8ab" aria-labelledby="tooltip-699d8e9e-5e6c-4ab5-9328-3f44f1b97ea1" type="button" disabled="disabled" data-view-component="true" class="Button Button--iconOnly Button--invisible Button--medium AppHeader-button HeaderMenu-link border cursor-wait"> <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-sliders Button-visual"> + <button data-target="react-partial-anchor.anchor" id="icon-button-b954a0c0-87df-4a1b-acb6-108297cb714c" aria-labelledby="tooltip-e3d3da88-78a7-4e30-9ce2-60424288aedc" type="button" disabled="disabled" data-view-component="true" class="Button Button--iconOnly Button--invisible Button--medium AppHeader-button HeaderMenu-link border cursor-wait"> <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-sliders Button-visual"> <path d="M15 2.75a.75.75 0 0 1-.75.75h-4a.75.75 0 0 1 0-1.5h4a.75.75 0 0 1 .75.75Zm-8.5.75v1.25a.75.75 0 0 0 1.5 0v-4a.75.75 0 0 0-1.5 0V2H1.75a.75.75 0 0 0 0 1.5H6.5Zm1.25 5.25a.75.75 0 0 0 0-1.5h-6a.75.75 0 0 0 0 1.5h6ZM15 8a.75.75 0 0 1-.75.75H11.5V10a.75.75 0 1 1-1.5 0V6a.75.75 0 0 1 1.5 0v1.25h2.75A.75.75 0 0 1 15 8Zm-9 5.25v-2a.75.75 0 0 0-1.5 0v1.25H1.75a.75.75 0 0 0 0 1.5H4.5v1.25a.75.75 0 0 0 1.5 0v-2Zm9 0a.75.75 0 0 1-.75.75h-6a.75.75 0 0 1 0-1.5h6a.75.75 0 0 1 .75.75Z"></path> </svg> -</button><tool-tip id="tooltip-699d8e9e-5e6c-4ab5-9328-3f44f1b97ea1" for="icon-button-e73de788-a39e-47bd-b818-7d902ba6e8ab" popover="manual" data-direction="s" data-type="label" data-view-component="true" class="sr-only position-absolute">Appearance settings</tool-tip> +</button><tool-tip id="tooltip-e3d3da88-78a7-4e30-9ce2-60424288aedc" for="icon-button-b954a0c0-87df-4a1b-acb6-108297cb714c" popover="manual" data-direction="s" data-type="label" data-view-component="true" class="sr-only position-absolute">Appearance settings</tool-tip> <template data-target="react-partial-anchor.template"> - <link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/primer-react-css.6dd722c034c861a4.module.css" /> -<link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/appearance-settings.36be0d8866eb1b54.module.css" /> + <link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/primer-react-css.a7c2e61315e78ba2.module.css" /> +<link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/appearance-settings.5c7ccb6a718f6c1b.module.css" /> <react-partial partial-name="appearance-settings" @@ -354,8 +354,8 @@ <div class="HeaderMenu js-header-menu height-fit position-lg-relative d-lg-flex flex-column flex-auto top-0"> <div class="HeaderMenu-wrapper d-flex flex-column flex-self-start flex-lg-row flex-auto rounded rounded-lg-0"> - <link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/primer-react-css.6dd722c034c861a4.module.css" /> -<link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/marketing-navigation.d11e438e7c4246d8.module.css" /> + <link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/primer-react-css.a7c2e61315e78ba2.module.css" /> +<link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/marketing-navigation.0d061fa8a7d6603d.module.css" /> <react-partial partial-name="marketing-navigation" @@ -374,7 +374,7 @@ -<qbsearch-input class="search-input" data-scope="owner:buetow" data-custom-scopes-path="/search/custom_scopes" data-delete-custom-scopes-csrf="YkAGMMdLh-O-ezO2UBa8pxLgw5Hwb68_VhOALyzaEOsljTmtE6pqnwXW-hmas6gyyOjQFA8J0WQfgW2CicdDlQ" data-max-custom-scopes="10" data-header-redesign-enabled="false" data-initial-value="" data-blackbird-suggestions-path="/search/suggestions" data-jump-to-suggestions-path="/_graphql/GetSuggestedNavigationDestinations" data-current-repository="" data-current-org="" data-current-owner="" data-logged-in="false" data-copilot-chat-enabled="false" data-nl-search-enabled="false" data-retain-scroll-position="true"> +<qbsearch-input class="search-input" data-scope="owner:buetow" data-custom-scopes-path="/search/custom_scopes" data-delete-custom-scopes-csrf="CenOQ7v1mlOJeJ5WTm41tEbMX2mUDaZJgghC1JCDPOhBu01brlgZoRJFSdF_dCvcwANNcvcZ-9T_glnCIaE2dA" data-max-custom-scopes="10" data-header-redesign-enabled="false" data-initial-value="" data-blackbird-suggestions-path="/search/suggestions" data-jump-to-suggestions-path="/_graphql/GetSuggestedNavigationDestinations" data-current-repository="" data-current-org="" data-current-owner="" data-logged-in="false" data-copilot-chat-enabled="false" data-nl-search-enabled="false" data-retain-scroll-position="true"> <div class="search-input-container search-with-dialog position-relative d-flex flex-row flex-items-center tmp-mr-4 rounded" data-action="click:qbsearch-input#searchInputContainerClicked" @@ -438,7 +438,7 @@ ></div> <div class="QueryBuilder-InputWrapper"> <div aria-hidden="true" class="QueryBuilder-Sizer" data-target="query-builder.sizer"></div> - <input id="query-builder-test" name="query-builder-test" value="" autocomplete="off" type="text" role="combobox" spellcheck="false" aria-expanded="false" aria-describedby="validation-692dc013-ff70-47ec-b344-a18cb08410af" data-target="query-builder.input" data-action=" + <input id="query-builder-test" name="query-builder-test" value="" autocomplete="off" type="text" role="combobox" spellcheck="false" aria-expanded="false" aria-describedby="validation-3845e455-842f-49af-a1ff-572be2d724f7" data-target="query-builder.input" data-action=" input:query-builder#inputChange blur:query-builder#inputBlur keydown:query-builder#inputKeydown @@ -679,7 +679,7 @@ ></ul> </div> - <div class="FormControl-inlineValidation" id="validation-692dc013-ff70-47ec-b344-a18cb08410af" hidden="hidden"> + <div class="FormControl-inlineValidation" id="validation-3845e455-842f-49af-a1ff-572be2d724f7" hidden="hidden"> <span class="FormControl-inlineValidation--visual"> <svg aria-hidden="true" height="12" viewBox="0 0 12 12" version="1.1" width="12" data-view-component="true" class="octicon octicon-alert-fill"> <path d="M4.855.708c.5-.896 1.79-.896 2.29 0l4.675 8.351a1.312 1.312 0 0 1-1.146 1.954H1.33A1.313 1.313 0 0 1 .183 9.058ZM7 7V3H5v4Zm-1 3a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z"></path> @@ -720,7 +720,7 @@ </div> <scrollable-region data-labelled-by="feedback-dialog-title"> - <div data-view-component="true" class="Overlay-body"> <!-- '"` --><!-- </textarea></xmp> --></option></form><form id="code-search-feedback-form" data-turbo="false" action="/search/feedback" accept-charset="UTF-8" method="post"><input type="hidden" data-csrf="true" name="authenticity_token" value="GRgFrw1FZFfHAmDW6aRAERwL854Xv4ioxL6buhTyDVyiwco6JNinoXUEGhg9KyKiH4ypSWE7SOvAq09ZPUeYsQ==" /> + <div data-view-component="true" class="Overlay-body"> <!-- '"` --><!-- </textarea></xmp> --></option></form><form id="code-search-feedback-form" data-turbo="false" action="/search/feedback" accept-charset="UTF-8" method="post"><input type="hidden" data-csrf="true" name="authenticity_token" value="0yRSP+ppfk2mNEI8NWZJV0/+ZbjKDlvXWlZSZ/oVXL2b6Ig7snzBExTY9ynSbELZcvPOmkO6Kq3QX/PZfNl1LQ==" /> <p>We read every piece of feedback, and take your input very seriously.</p> <textarea name="feedback" class="form-control width-full mb-2" style="height: 120px" id="feedback"></textarea> <input name="include_email" id="include_email" aria-label="Include my email address so I can be contacted" class="form-control mr-2" type="checkbox"> @@ -758,7 +758,7 @@ <div data-view-component="true" class="Overlay-body"> <div data-target="custom-scopes.customScopesModalDialogFlash"></div> <div hidden class="create-custom-scope-form" data-target="custom-scopes.createCustomScopeForm"> - <!-- '"` --><!-- </textarea></xmp> --></option></form><form id="custom-scopes-dialog-form" data-turbo="false" action="/search/custom_scopes" accept-charset="UTF-8" method="post"><input type="hidden" data-csrf="true" name="authenticity_token" value="cyuT32KXEahevrnhCPUi8vDuotdeKtmwSFSRs2zDcmdJxXG6DkG5yqNZplQ7xa1eggK7SfiALCfwg2vgJm/Tsg==" /> + <!-- '"` --><!-- </textarea></xmp> --></option></form><form id="custom-scopes-dialog-form" data-turbo="false" action="/search/custom_scopes" accept-charset="UTF-8" method="post"><input type="hidden" data-csrf="true" name="authenticity_token" value="oAcw96YoyoLylxWtVsk1fq+SkBDdGo+xj4vum0x7fZWE2aja8IasTKbZeaY7pgFu4JsGgtTajAtNktw771ANeg==" /> <div data-target="custom-scopes.customScopesModalDialogFlash"></div> <input type="hidden" id="custom_scope_id" name="custom_scope_id" data-target="custom-scopes.customScopesIdField"> @@ -776,7 +776,7 @@ placeholder="github-ruby" required maxlength="50"> - <input type="hidden" data-csrf="true" value="ipNwQ4Fb+PZbE48lEtZ83ewci6LM0QG00CNkfDfjFrFqCHujEaGwPcl+WB2dFHNxJRhFZNft2tFK9uZ9/Uttxg==" /> + <input type="hidden" data-csrf="true" value="10veA41FVngYxBfMrh84/AheLRVACfHmIspafvJ/XEMzKQbfPKArOweQavFMw9ElLgA1ZDg6tSy2lMwaFnwZ8A==" /> </auto-check> </div> @@ -831,7 +831,7 @@ <h4 data-view-component="true" class="color-fg-default mb-2"> Sign in to GitHub </h4> -<!-- '"` --><!-- </textarea></xmp> --></option></form><form data-turbo="false" action="/session" accept-charset="UTF-8" method="post"><input type="hidden" data-csrf="true" name="authenticity_token" value="mienfG5d6VfV72hAzLAjcqseECR+hWRf6i7OI/efokT/h8qY7sejGD8bUrOqGPS/mrtmDXdHfWX9i+mwiQXf3A==" /> <input type="hidden" name="add_account" id="add_account" autocomplete="off" class="form-control" /> +<!-- '"` --><!-- </textarea></xmp> --></option></form><form data-turbo="false" action="/session" accept-charset="UTF-8" method="post"><input type="hidden" data-csrf="true" name="authenticity_token" value="PaWVngEmR0N3rM6lfLIsxRFcGZM7wI8EY4OXIuOpzLtQGR7jsUb5h8rYKekqCW4hTyECOGEmsqmGKmpfuaI++g==" /> <input type="hidden" name="add_account" id="add_account" autocomplete="off" class="form-control" /> <label for="login_field"> Username or email address @@ -853,9 +853,9 @@ <input type="hidden" name="allow_signup" id="allow_signup" autocomplete="off" class="form-control" /> <input type="hidden" name="client_id" id="client_id" autocomplete="off" class="form-control" /> <input type="hidden" name="integration" id="integration" autocomplete="off" class="form-control" /> -<input class="form-control" type="text" name="required_field_280b" hidden="hidden" /> -<input class="form-control" type="hidden" name="timestamp" value="1773993528069" /> -<input class="form-control" type="hidden" name="timestamp_secret" value="089c006ca96049ebf32957a740a8e51886c68b62fb83aaef24b5a06d5cf63b80" /> +<input class="form-control" type="text" name="required_field_27cc" hidden="hidden" /> +<input class="form-control" type="hidden" name="timestamp" value="1774625306552" /> +<input class="form-control" type="hidden" name="timestamp_secret" value="47bcf5ccefbeb5d73fc1acd72b5ac1efadf92567cd66157bfe21efa7c799af15" /> <input type="submit" name="commit" value="Sign in" class="btn btn-primary btn-block js-sign-in-button" data-disable-with="Signing in…" data-signin-label="Sign in" data-sso-label="Sign in with your identity provider" development="false" disable-emu-sso="false" /> @@ -882,14 +882,14 @@ <div class="AppHeader-appearanceSettings"> <react-partial-anchor> - <button data-target="react-partial-anchor.anchor" id="icon-button-cf12199f-af16-4cdd-9f8b-1e1837b01f10" aria-labelledby="tooltip-0825fbc3-75e5-433d-887e-d26c5be0765d" type="button" disabled="disabled" data-view-component="true" class="Button Button--iconOnly Button--invisible Button--medium AppHeader-button HeaderMenu-link border cursor-wait"> <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-sliders Button-visual"> + <button data-target="react-partial-anchor.anchor" id="icon-button-196ed26e-4001-4aac-b091-3f8e7308be09" aria-labelledby="tooltip-48776ba1-d209-4ec9-a01c-f783c623c94a" type="button" disabled="disabled" data-view-component="true" class="Button Button--iconOnly Button--invisible Button--medium AppHeader-button HeaderMenu-link border cursor-wait"> <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-sliders Button-visual"> <path d="M15 2.75a.75.75 0 0 1-.75.75h-4a.75.75 0 0 1 0-1.5h4a.75.75 0 0 1 .75.75Zm-8.5.75v1.25a.75.75 0 0 0 1.5 0v-4a.75.75 0 0 0-1.5 0V2H1.75a.75.75 0 0 0 0 1.5H6.5Zm1.25 5.25a.75.75 0 0 0 0-1.5h-6a.75.75 0 0 0 0 1.5h6ZM15 8a.75.75 0 0 1-.75.75H11.5V10a.75.75 0 1 1-1.5 0V6a.75.75 0 0 1 1.5 0v1.25h2.75A.75.75 0 0 1 15 8Zm-9 5.25v-2a.75.75 0 0 0-1.5 0v1.25H1.75a.75.75 0 0 0 0 1.5H4.5v1.25a.75.75 0 0 0 1.5 0v-2Zm9 0a.75.75 0 0 1-.75.75h-6a.75.75 0 0 1 0-1.5h6a.75.75 0 0 1 .75.75Z"></path> </svg> -</button><tool-tip id="tooltip-0825fbc3-75e5-433d-887e-d26c5be0765d" for="icon-button-cf12199f-af16-4cdd-9f8b-1e1837b01f10" popover="manual" data-direction="s" data-type="label" data-view-component="true" class="sr-only position-absolute">Appearance settings</tool-tip> +</button><tool-tip id="tooltip-48776ba1-d209-4ec9-a01c-f783c623c94a" for="icon-button-196ed26e-4001-4aac-b091-3f8e7308be09" popover="manual" data-direction="s" data-type="label" data-view-component="true" class="sr-only position-absolute">Appearance settings</tool-tip> <template data-target="react-partial-anchor.template"> - <link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/primer-react-css.6dd722c034c861a4.module.css" /> -<link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/appearance-settings.36be0d8866eb1b54.module.css" /> + <link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/primer-react-css.a7c2e61315e78ba2.module.css" /> +<link crossorigin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/appearance-settings.5c7ccb6a718f6c1b.module.css" /> <react-partial partial-name="appearance-settings" @@ -923,10 +923,10 @@ <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-35aaa94f-f14a-4df3-9867-9fea2d0c5b91" aria-labelledby="tooltip-21f5dd4e-e9c5-4c57-b4b7-e0c7f629e310" type="button" data-view-component="true" class="Button Button--iconOnly Button--invisible Button--medium flash-close js-flash-close"> <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-x Button-visual"> + <button id="icon-button-7c59a37d-296a-4cce-9e1f-3b48f0673e51" aria-labelledby="tooltip-42e92e5d-14ac-448e-973d-fe50924b7133" type="button" data-view-component="true" class="Button Button--iconOnly Button--invisible Button--medium flash-close js-flash-close"> <svg aria-hidden="true" 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-21f5dd4e-e9c5-4c57-b4b7-e0c7f629e310" for="icon-button-35aaa94f-f14a-4df3-9867-9fea2d0c5b91" popover="manual" data-direction="s" data-type="label" data-view-component="true" class="sr-only position-absolute">Dismiss alert</tool-tip> +</button><tool-tip id="tooltip-42e92e5d-14ac-448e-973d-fe50924b7133" for="icon-button-7c59a37d-296a-4cce-9e1f-3b48f0673e51" popover="manual" data-direction="s" data-type="label" data-view-component="true" class="sr-only position-absolute">Dismiss alert</tool-tip> @@ -1040,7 +1040,9 @@ <div class="d-flex flex-wrap tmp-py-5 tmp-mb-5"> <section class="col-12 col-lg-4 tmp-mb-5 tmp-pr-lg-4"> <a href="/" data-analytics-event="{"category":"Footer","action":"go to home","label":"text:home"}" class="color-fg-default d-inline-block" aria-label="Go to GitHub homepage"> - <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="currentColor" viewBox="0 0 416 95" class="footer-logo-mktg d-block" height="30"><clipPath id="a"><path d="m0 0h416v95h-416z"></path></clipPath><clipPath id="b"><path d="m117.185 9.49258h298.068v75.9408h-298.068z"></path></clipPath><g clip-path="url(#a)"><path d="m41.6394 69.3848c-12.6328-1.5313-21.5332-10.6231-21.5332-22.3946 0-4.7851 1.7227-9.9531 4.5938-13.3984-1.2442-3.1582-1.0528-9.8574.3828-12.6328 3.8281-.4785 8.9961 1.5312 12.0586 4.3066 3.6367-1.1484 7.4648-1.7226 12.1543-1.7226 4.6894 0 8.5175.5742 11.9628 1.6269 2.9668-2.6797 8.2305-4.6894 12.0586-4.2109 1.3399 2.584 1.5313 9.2832.2871 12.5371 3.0625 3.6367 4.6895 8.5176 4.6895 13.4941 0 11.7715-8.9004 20.6719-21.7246 22.2989 3.2539 2.1054 5.4551 6.6992 5.4551 11.9629v9.9531c0 2.8711 2.3925 4.498 5.2636 3.3496 17.3223-6.6035 30.9122-23.9258 30.9122-45.3633 0-27.084-22.0118-49.19139933-49.0958-49.19139957-27.0839-.00000024-48.904249 22.10739957-48.904249 49.19139957 0 21.2461 13.494149 38.8555 31.677749 45.459 2.584.957 5.0723-.7656 5.0723-3.3496v-7.6563c-1.3399.5743-3.0625.9571-4.5938.9571-6.3164 0-10.0488-3.4453-12.7285-9.8575-1.0527-2.5839-2.2012-4.1152-4.4024-4.4023-1.1484-.0957-1.5312-.5742-1.5312-1.1484 0-1.1485 1.9141-2.0098 3.8281-2.0098 2.7754 0 5.168 1.7227 7.6563 5.2637 1.914 2.7754 3.9238 4.0195 6.3164 4.0195s3.9238-.8613 6.125-3.0625c1.6269-1.627 2.8711-3.0625 4.0195-4.0195z"></path><g clip-path="url(#b)"><path d="m188.937 83.0045v-49.7218h13.978v49.7218zm41.079 0c-9.289 0-12.917-3.9813-12.917-12.3862v-25.6572h-8.847v-11.6784h8.847v-9.909l13.979-3.2735v13.1825h10.351v11.6784h-10.351v22.5606c0 2.7427 1.239 3.8044 3.981 3.8044h6.37v11.6784zm97.454.8847c-10.882 0-16.81-6.0161-16.81-16.9868v-33.6197h14.068v29.9039c0 6.1046 2.742 9.4666 7.962 9.4666 6.016 0 10.617-5.5738 10.617-13.1825v-26.188h14.067v49.7218h-14.067v-8.4049c-2.654 5.3968-9.024 9.2896-15.837 9.2896zm67.143 0c-6.781 0-12.974-3.8928-15.926-9.4666v8.5819h-13.978v-69.3628h14.067v28.7537c2.863-6.0162 9.322-10.2629 15.837-10.2629 13.568 0 20.735 9.3782 20.26 25.9226.475 16.3675-6.957 25.8341-20.26 25.8341zm-4.955-11.7669c7.287 0 11.268-5.3968 10.794-14.0672.474-8.7588-3.507-14.1557-10.794-14.1557-5.807 0-10.407 5.6623-10.882 13.4479v.7963c.475 8.051 5.075 13.9787 10.882 13.9787zm-100.924-58.4806v28.1344h-26.365v-28.1344h-15.04v69.3628h15.04v-27.7805h26.365v27.7805h15.041v-69.3628zm-138.106 70.6899c-20.526 0-33.443-14.0672-33.443-36.097s13.183-35.92 34.062-35.92c16.987 0 27.25 7.2547 30.523 19.464l-15.217 3.6274c-1.858-6.6355-7.166-10.2629-15.306-10.2629-12.121 0-18.668 7.9626-18.668 23.0915s6.37 23.2684 18.314 23.2684c10.971 0 17.518-6.7239 17.518-18.137v-2.6541l3.893 5.3968h-22.649v-12.7401h33.973v8.051c0 21.1451-12.297 32.912-33 32.912zm45.298-55.738c4.689 0 8.317-3.6274 8.317-8.3165 0-4.689-3.628-8.3164-8.317-8.3164s-8.316 3.6274-8.316 8.3164c0 4.6891 3.627 8.3165 8.316 8.3165z"></path></g></g></svg> + <svg height="30" aria-hidden="true" viewBox="0 0 103 24" version="1.1" width="128" data-view-component="true" class="octicon octicon-lockup-github footer-logo-mktg d-block"> + <path d="M36.472 3.088c4.225 0 6.777 1.805 7.591 4.841l-3.784.902c-.462-1.65-1.783-2.552-3.807-2.552-3.015 0-4.643 1.98-4.643 5.743s1.584 5.787 4.555 5.787c2.502 0 4.079-1.406 4.323-3.829h-4.631v-3.168h8.45v2.002c0 5.26-3.059 8.186-8.208 8.186C31.213 21 28 17.501 28 12.022c0-5.48 3.279-8.934 8.472-8.934M79.62 15.741c0 1.518.682 2.355 1.98 2.355 1.497 0 2.64-1.387 2.64-3.28V8.304h3.5V20.67h-3.5v-2.09c-.66 1.342-2.244 2.31-3.938 2.31-2.707 0-4.181-1.496-4.181-4.225V8.303h3.499z"></path><path fill-rule="evenodd" d="M93.063 10.57C93.775 9.073 95.38 8.017 97 8.017c3.375 0 5.158 2.333 5.039 6.448.119 4.07-1.73 6.425-5.039 6.425-1.686 0-3.226-.968-3.96-2.355v2.135h-3.477V3.418h3.499zm2.706.374c-1.444 0-2.588 1.408-2.707 3.345v.198c.119 2.002 1.263 3.476 2.707 3.476 1.813 0 2.803-1.342 2.685-3.498.118-2.179-.872-3.521-2.685-3.521"></path><path d="M49.323 20.67h-3.477V8.303h3.477zm7.004-12.367h2.575v2.905h-2.575v5.611c0 .682.308.946.99.946h1.585v2.905h-2.839c-2.31 0-3.212-.99-3.212-3.08v-6.382H50.65V8.303h2.2V5.84l3.477-.814zm7.783-4.885v6.998h6.558V3.418h3.74V20.67h-3.74v-6.91H64.11v6.91h-3.74V3.418zM47.584 3c1.167 0 2.069.902 2.069 2.069a2.04 2.04 0 0 1-2.069 2.068 2.04 2.04 0 0 1-2.068-2.068c0-1.167.902-2.069 2.068-2.069M10.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="h5 tmp-mt-4 mb-0" id="subscribe-to-newsletter">Subscribe to our developer newsletter</h3> diff --git a/about/showcase/hypr/image-1.svg b/about/showcase/hypr/image-1.svg new file mode 100644 index 00000000..6bf71b4d --- /dev/null +++ b/about/showcase/hypr/image-1.svg @@ -0,0 +1,425 @@ +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1536 512" width="1536" height="512"> + <title>Hyperstack · Pi · FreeBSD Logo</title> + <defs> + <!-- Background gradient --> + <linearGradient id="bg" x1="0%" y1="0%" x2="100%" y2="100%"> + <stop offset="0%" style="stop-color:#0d1117"/> + <stop offset="100%" style="stop-color:#161b22"/> + </linearGradient> + <!-- Blue: Hyperstack / GPU --> + <linearGradient id="gpuGrad" x1="0%" y1="0%" x2="100%" y2="100%"> + <stop offset="0%" style="stop-color:#1f6feb"/> + <stop offset="100%" style="stop-color:#388bfd"/> + </linearGradient> + <!-- Pi symbol gradient --> + <linearGradient id="piGrad" x1="0%" y1="0%" x2="0%" y2="100%"> + <stop offset="0%" style="stop-color:#58a6ff"/> + <stop offset="100%" style="stop-color:#1f6feb"/> + </linearGradient> + <!-- Red: FreeBSD daemon horns --> + <linearGradient id="bsdGrad" x1="0%" y1="0%" x2="100%" y2="0%"> + <stop offset="0%" style="stop-color:#ff6b6b"/> + <stop offset="100%" style="stop-color:#ff4444"/> + </linearGradient> + <!-- Purple: AI / neural network --> + <linearGradient id="aiGrad" x1="0%" y1="0%" x2="100%" y2="100%"> + <stop offset="0%" style="stop-color:#a78bfa"/> + <stop offset="100%" style="stop-color:#7c3aed"/> + </linearGradient> + <!-- Green: tmux status bar --> + <linearGradient id="tmuxBar" x1="0%" y1="0%" x2="100%" y2="0%"> + <stop offset="0%" style="stop-color:#1a2d1a"/> + <stop offset="100%" style="stop-color:#0d1f0d"/> + </linearGradient> + + <!-- Glow for Pi symbol --> + <filter id="glow" x="-25%" y="-25%" width="150%" height="150%"> + <feGaussianBlur in="SourceGraphic" stdDeviation="7" result="blur"/> + <feMerge><feMergeNode in="blur"/><feMergeNode in="SourceGraphic"/></feMerge> + </filter> + <!-- Glow for BSD horns --> + <filter id="hornGlow" x="-40%" y="-40%" width="180%" height="180%"> + <feGaussianBlur in="SourceGraphic" stdDeviation="5" result="blur"/> + <feMerge><feMergeNode in="blur"/><feMergeNode in="SourceGraphic"/></feMerge> + </filter> + <!-- Glow for AI nodes --> + <filter id="aiGlow" x="-60%" y="-60%" width="220%" height="220%"> + <feGaussianBlur in="SourceGraphic" stdDeviation="6" result="blur"/> + <feMerge><feMergeNode in="blur"/><feMergeNode in="SourceGraphic"/></feMerge> + </filter> + <!-- Soft glow for GPU chip --> + <filter id="chipGlow" x="-20%" y="-20%" width="140%" height="140%"> + <feGaussianBlur in="SourceGraphic" stdDeviation="4" result="blur"/> + <feMerge><feMergeNode in="blur"/><feMergeNode in="SourceGraphic"/></feMerge> + </filter> + </defs> + + <!-- ═══════════════════════════════════════════════════════════ + BACKGROUND + ═══════════════════════════════════════════════════════════ --> + <rect width="1536" height="512" rx="40" fill="url(#bg)"/> + + <!-- Full-width GPU circuit grid background texture --> + <g opacity="0.10" stroke="#388bfd" stroke-width="1"> + <!-- Horizontals --> + <line x1="0" y1="64" x2="1536" y2="64"/> + <line x1="0" y1="128" x2="1536" y2="128"/> + <line x1="0" y1="192" x2="1536" y2="192"/> + <line x1="0" y1="256" x2="1536" y2="256"/> + <line x1="0" y1="320" x2="1536" y2="320"/> + <line x1="0" y1="384" x2="1536" y2="384"/> + <line x1="0" y1="448" x2="1536" y2="448"/> + <!-- Verticals --> + <line x1="64" y1="0" x2="64" y2="512"/> + <line x1="128" y1="0" x2="128" y2="512"/> + <line x1="192" y1="0" x2="192" y2="512"/> + <line x1="256" y1="0" x2="256" y2="512"/> + <line x1="320" y1="0" x2="320" y2="512"/> + <line x1="384" y1="0" x2="384" y2="512"/> + <line x1="448" y1="0" x2="448" y2="512"/> + <line x1="512" y1="0" x2="512" y2="512"/> + <line x1="576" y1="0" x2="576" y2="512"/> + <line x1="640" y1="0" x2="640" y2="512"/> + <line x1="704" y1="0" x2="704" y2="512"/> + <line x1="768" y1="0" x2="768" y2="512"/> + <line x1="832" y1="0" x2="832" y2="512"/> + <line x1="896" y1="0" x2="896" y2="512"/> + <line x1="960" y1="0" x2="960" y2="512"/> + <line x1="1024" y1="0" x2="1024" y2="512"/> + <line x1="1088" y1="0" x2="1088" y2="512"/> + <line x1="1152" y1="0" x2="1152" y2="512"/> + <line x1="1216" y1="0" x2="1216" y2="512"/> + <line x1="1280" y1="0" x2="1280" y2="512"/> + <line x1="1344" y1="0" x2="1344" y2="512"/> + <line x1="1408" y1="0" x2="1408" y2="512"/> + <line x1="1472" y1="0" x2="1472" y2="512"/> + </g> + + <!-- ═══════════════════════════════════════════════════════════ + LEFT PANEL: AI Neural Network + GPU A100 chip + x: 0–460 + ═══════════════════════════════════════════════════════════ --> + + <!-- GPU A100 chip outline (left, centred vertically) --> + <!-- Chip body --> + <rect x="48" y="156" width="180" height="200" rx="10" + fill="none" stroke="#1f6feb" stroke-width="2" opacity="0.55" + filter="url(#chipGlow)"/> + <!-- Chip inner die --> + <rect x="74" y="182" width="128" height="148" rx="6" + fill="#1f6feb" fill-opacity="0.06" stroke="#388bfd" stroke-width="1" opacity="0.7"/> + <!-- Die grid pattern inside chip --> + <g stroke="#388bfd" stroke-width="0.5" opacity="0.35"> + <line x1="74" y1="214" x2="202" y2="214"/> + <line x1="74" y1="246" x2="202" y2="246"/> + <line x1="74" y1="278" x2="202" y2="278"/> + <line x1="74" y1="310" x2="202" y2="310"/> + <line x1="106" y1="182" x2="106" y2="330"/> + <line x1="138" y1="182" x2="138" y2="330"/> + <line x1="170" y1="182" x2="170" y2="330"/> + </g> + <!-- Chip pins — left side --> + <g stroke="#388bfd" stroke-width="2" opacity="0.6"> + <line x1="24" y1="180" x2="48" y2="180"/> + <line x1="24" y1="204" x2="48" y2="204"/> + <line x1="24" y1="228" x2="48" y2="228"/> + <line x1="24" y1="252" x2="48" y2="252"/> + <line x1="24" y1="276" x2="48" y2="276"/> + <line x1="24" y1="300" x2="48" y2="300"/> + <line x1="24" y1="324" x2="48" y2="324"/> + <line x1="24" y1="348" x2="48" y2="348"/> + </g> + <!-- Chip pins — right side --> + <g stroke="#388bfd" stroke-width="2" opacity="0.6"> + <line x1="228" y1="180" x2="252" y2="180"/> + <line x1="228" y1="204" x2="252" y2="204"/> + <line x1="228" y1="228" x2="252" y2="228"/> + <line x1="228" y1="252" x2="252" y2="252"/> + <line x1="228" y1="276" x2="252" y2="276"/> + <line x1="228" y1="300" x2="252" y2="300"/> + <line x1="228" y1="324" x2="252" y2="324"/> + <line x1="228" y1="348" x2="252" y2="348"/> + </g> + <!-- Chip pins — top side --> + <g stroke="#388bfd" stroke-width="2" opacity="0.6"> + <line x1="80" y1="132" x2="80" y2="156"/> + <line x1="106" y1="132" x2="106" y2="156"/> + <line x1="132" y1="132" x2="132" y2="156"/> + <line x1="158" y1="132" x2="158" y2="156"/> + <line x1="184" y1="132" x2="184" y2="156"/> + <line x1="210" y1="132" x2="210" y2="156"/> + </g> + <!-- Chip pins — bottom side --> + <g stroke="#388bfd" stroke-width="2" opacity="0.6"> + <line x1="80" y1="356" x2="80" y2="380"/> + <line x1="106" y1="356" x2="106" y2="380"/> + <line x1="132" y1="356" x2="132" y2="380"/> + <line x1="158" y1="356" x2="158" y2="380"/> + <line x1="184" y1="356" x2="184" y2="380"/> + <line x1="210" y1="356" x2="210" y2="380"/> + </g> + <!-- A100 label inside chip --> + <text x="138" y="262" + text-anchor="middle" + font-family="'SF Mono','Fira Code','Consolas',monospace" + font-size="22" font-weight="700" letter-spacing="1" + fill="#388bfd" opacity="0.8">A100</text> + <text x="138" y="284" + text-anchor="middle" + font-family="'SF Mono','Fira Code','Consolas',monospace" + font-size="10" font-weight="400" letter-spacing="1" + fill="#1f6feb" opacity="0.6">80GB · PCIe</text> + + <!-- Neural network nodes (AI) — right of the chip, bridging to center --> + <!-- Layer 1 (input) nodes — x≈290 --> + <g filter="url(#aiGlow)"> + <circle cx="295" cy="160" r="10" fill="url(#aiGrad)" opacity="0.85"/> + <circle cx="295" cy="220" r="10" fill="url(#aiGrad)" opacity="0.85"/> + <circle cx="295" cy="280" r="10" fill="url(#aiGrad)" opacity="0.85"/> + <circle cx="295" cy="340" r="10" fill="url(#aiGrad)" opacity="0.85"/> + </g> + <!-- Layer 2 (hidden) nodes — x≈360 --> + <g filter="url(#aiGlow)"> + <circle cx="370" cy="140" r="12" fill="url(#aiGrad)" opacity="0.90"/> + <circle cx="370" cy="200" r="12" fill="url(#aiGrad)" opacity="0.90"/> + <circle cx="370" cy="260" r="12" fill="url(#aiGrad)" opacity="0.90"/> + <circle cx="370" cy="320" r="12" fill="url(#aiGrad)" opacity="0.90"/> + <circle cx="370" cy="380" r="12" fill="url(#aiGrad)" opacity="0.90"/> + </g> + <!-- Layer 3 (output/bridge) nodes — x≈435 --> + <g filter="url(#aiGlow)"> + <circle cx="435" cy="180" r="9" fill="url(#aiGrad)" opacity="0.75"/> + <circle cx="435" cy="256" r="9" fill="url(#aiGrad)" opacity="0.75"/> + <circle cx="435" cy="332" r="9" fill="url(#aiGrad)" opacity="0.75"/> + </g> + <!-- Neural connections layer 1 → 2 --> + <g stroke="#7c3aed" stroke-width="1" fill="none" opacity="0.28"> + <line x1="305" y1="160" x2="358" y2="140"/> + <line x1="305" y1="160" x2="358" y2="200"/> + <line x1="305" y1="160" x2="358" y2="260"/> + <line x1="305" y1="220" x2="358" y2="140"/> + <line x1="305" y1="220" x2="358" y2="200"/> + <line x1="305" y1="220" x2="358" y2="260"/> + <line x1="305" y1="220" x2="358" y2="320"/> + <line x1="305" y1="280" x2="358" y2="200"/> + <line x1="305" y1="280" x2="358" y2="260"/> + <line x1="305" y1="280" x2="358" y2="320"/> + <line x1="305" y1="280" x2="358" y2="380"/> + <line x1="305" y1="340" x2="358" y2="260"/> + <line x1="305" y1="340" x2="358" y2="320"/> + <line x1="305" y1="340" x2="358" y2="380"/> + </g> + <!-- Neural connections layer 2 → 3 --> + <g stroke="#8b5cf6" stroke-width="1" fill="none" opacity="0.32"> + <line x1="382" y1="140" x2="426" y2="180"/> + <line x1="382" y1="200" x2="426" y2="180"/> + <line x1="382" y1="200" x2="426" y2="256"/> + <line x1="382" y1="260" x2="426" y2="180"/> + <line x1="382" y1="260" x2="426" y2="256"/> + <line x1="382" y1="260" x2="426" y2="332"/> + <line x1="382" y1="320" x2="426" y2="256"/> + <line x1="382" y1="320" x2="426" y2="332"/> + <line x1="382" y1="380" x2="426" y2="332"/> + </g> + <!-- Chip → neural network trace --> + <g stroke="#388bfd" stroke-width="1.5" fill="none" opacity="0.35"> + <polyline points="252,252 275,252 275,220 285,220"/> + <polyline points="252,300 275,300 275,340 285,340"/> + </g> + + <!-- "AI" label --> + <text x="138" y="110" + text-anchor="middle" + font-family="'SF Mono','Fira Code','Consolas',monospace" + font-size="11" font-weight="400" letter-spacing="2" + fill="#7c3aed" opacity="0.6">NEURAL · AI</text> + + <!-- ═══════════════════════════════════════════════════════════ + CENTER PANEL: π symbol with BSD daemon horns + Centred at x=768 + ═══════════════════════════════════════════════════════════ --> + + <!-- Stronger GPU grid in center zone only --> + <g opacity="0.18" stroke="#388bfd" stroke-width="1"> + <line x1="512" y1="128" x2="1024" y2="128"/> + <line x1="512" y1="192" x2="1024" y2="192"/> + <line x1="512" y1="256" x2="1024" y2="256"/> + <line x1="512" y1="320" x2="1024" y2="320"/> + <line x1="512" y1="384" x2="1024" y2="384"/> + <line x1="576" y1="80" x2="576" y2="450"/> + <line x1="640" y1="80" x2="640" y2="450"/> + <line x1="704" y1="80" x2="704" y2="450"/> + <line x1="768" y1="80" x2="768" y2="450"/> + <line x1="832" y1="80" x2="832" y2="450"/> + <line x1="896" y1="80" x2="896" y2="450"/> + <line x1="960" y1="80" x2="960" y2="450"/> + </g> + <!-- Circuit nodes in center --> + <g fill="#1f6feb" opacity="0.38"> + <circle cx="576" cy="128" r="4"/> + <circle cx="640" cy="192" r="4"/> + <circle cx="896" cy="128" r="4"/> + <circle cx="960" cy="192" r="4"/> + <circle cx="576" cy="384" r="4"/> + <circle cx="640" cy="320" r="4"/> + <circle cx="896" cy="384" r="4"/> + <circle cx="960" cy="320" r="4"/> + </g> + <!-- PCB traces in center zone --> + <g stroke="#1f6feb" stroke-width="2" fill="none" opacity="0.25"> + <polyline points="576,128 576,192 640,192"/> + <polyline points="960,128 960,192 896,192"/> + <polyline points="576,384 576,320 640,320"/> + <polyline points="960,384 960,320 896,320"/> + </g> + + <!-- Circular glow ring behind π --> + <ellipse cx="768" cy="300" rx="185" ry="165" + fill="none" stroke="#1f6feb" stroke-width="1.5" opacity="0.13"/> + <ellipse cx="768" cy="300" rx="210" ry="188" + fill="none" stroke="#1f6feb" stroke-width="0.5" opacity="0.07"/> + + <!-- + FreeBSD daemon horns — above the π crossbar, symmetric bezier curves. + Base at x≈718/818 (centred at 768). + --> + <!-- Left horn --> + <path d="M 718 172 + C 716 152 708 132 696 114 + C 686 98 668 90 673 100 + C 678 110 686 126 688 144 + C 690 158 698 170 708 174 Z" + fill="url(#bsdGrad)" filter="url(#hornGlow)"/> + <path d="M 716 168 C 710 148 700 128 692 112 C 686 100 678 96 681 106" + stroke="#ffaaaa" stroke-width="2" fill="none" opacity="0.4"/> + <!-- Right horn --> + <path d="M 818 172 + C 820 152 828 132 840 114 + C 850 98 868 90 863 100 + C 858 110 850 126 848 144 + C 846 158 838 170 828 174 Z" + fill="url(#bsdGrad)" filter="url(#hornGlow)"/> + <path d="M 820 168 C 826 148 836 128 844 112 C 850 100 858 96 855 106" + stroke="#ffaaaa" stroke-width="2" fill="none" opacity="0.4"/> + + <!-- + π (Pi) symbol — centred at x=768. + Crossbar: y=188–210. Legs extend to y≈400. + --> + <g filter="url(#glow)"> + <!-- Crossbar --> + <rect x="628" y="188" width="280" height="24" rx="12" fill="url(#piGrad)"/> + <!-- Left leg --> + <path d="M 666 212 + C 666 272 656 328 642 366 + C 634 386 630 400 638 410 + C 646 420 660 420 670 410 + C 678 402 680 386 684 366 + C 696 308 702 260 702 212 Z" + fill="url(#piGrad)"/> + <!-- Right leg — symmetric --> + <path d="M 870 212 + C 870 272 880 328 894 366 + C 902 386 906 400 898 410 + C 890 420 876 420 866 410 + C 858 402 856 386 852 366 + C 840 308 834 260 834 212 Z" + fill="url(#piGrad)"/> + </g> + + <!-- ═══════════════════════════════════════════════════════════ + RIGHT PANEL: tmux terminal window + x: 1086–1500 + ═══════════════════════════════════════════════════════════ --> + + <!-- Terminal window frame --> + <rect x="1096" y="80" width="400" height="352" rx="10" + fill="#0d1117" stroke="#30363d" stroke-width="1.5" opacity="0.95"/> + + <!-- Title bar --> + <rect x="1096" y="80" width="400" height="32" rx="10" + fill="#161b22"/> + <rect x="1096" y="96" width="400" height="16" fill="#161b22"/> + <!-- Traffic-light dots --> + <circle cx="1118" cy="96" r="6" fill="#ff5f56" opacity="0.9"/> + <circle cx="1138" cy="96" r="6" fill="#ffbd2e" opacity="0.9"/> + <circle cx="1158" cy="96" r="6" fill="#27c93f" opacity="0.9"/> + <!-- Title text --> + <text x="1296" y="101" + text-anchor="middle" + font-family="'SF Mono','Fira Code','Consolas',monospace" + font-size="11" fill="#6e7681">hyperstack.wg1 — zsh</text> + + <!-- Terminal content area --> + <rect x="1096" y="112" width="400" height="284" fill="#0d1117" opacity="0.95"/> + + <!-- Terminal lines — simulated shell session --> + <g font-family="'SF Mono','Fira Code','Consolas',monospace" font-size="11" fill="#c9d1d9"> + <!-- Prompt + command 1 --> + <text x="1112" y="140"> + <tspan fill="#3fb950">❯</tspan> + <tspan fill="#8b949e"> ruby hyperstack.rb create-both</tspan> + </text> + <text x="1112" y="158" fill="#6e7681"> Creating VM hyperstack1 (A100)...</text> + <text x="1112" y="174" fill="#6e7681"> Creating VM hyperstack2 (A100)...</text> + <text x="1112" y="190" fill="#3fb950"> vllm-ready ✓ wireguard-ok ✓</text> + + <!-- Prompt + command 2 --> + <text x="1112" y="214"> + <tspan fill="#3fb950">❯</tspan> + <tspan fill="#8b949e"> pi --model hyperstack1/nemotron</tspan> + </text> + <text x="1112" y="230" fill="#6e7681"> Connecting to hyperstack1.wg1…</text> + <text x="1112" y="246" fill="#58a6ff"> » Hello! Ready to code with you.</text> + + <!-- Prompt + command 3 --> + <text x="1112" y="270"> + <tspan fill="#3fb950">❯</tspan> + <tspan fill="#8b949e"> pi --model hyperstack2/qwen3</tspan> + </text> + <text x="1112" y="286" fill="#6e7681"> Connecting to hyperstack2.wg1…</text> + <text x="1112" y="302" fill="#58a6ff"> » I am Qwen3-Coder, let's build!</text> + + <!-- Blinking cursor --> + <rect x="1112" y="322" width="8" height="14" fill="#58a6ff" opacity="0.8"/> + </g> + + <!-- tmux status bar at bottom of terminal --> + <rect x="1096" y="396" width="400" height="24" rx="0" fill="url(#tmuxBar)"/> + <rect x="1096" y="408" width="400" height="12" fill="url(#tmuxBar)"/> + <rect x="1096" y="396" width="400" height="24" + fill="none" stroke="#30363d" stroke-width="0.5" opacity="0.5"/> + + <!-- tmux status bar text --> + <!-- Left: session + windows --> + <rect x="1096" y="396" width="68" height="24" fill="#3fb950" opacity="0.18"/> + <text x="1104" y="412" + font-family="'SF Mono','Fira Code','Consolas',monospace" + font-size="10" font-weight="600" fill="#3fb950">[hyperstack]</text> + <text x="1170" y="412" + font-family="'SF Mono','Fira Code','Consolas',monospace" + font-size="10" fill="#6e7681">0:pi* 1:ssh 2:logs</text> + <!-- Right: clock --> + <text x="1486" y="412" + text-anchor="end" + font-family="'SF Mono','Fira Code','Consolas',monospace" + font-size="10" fill="#6e7681">21:03</text> + + <!-- Terminal window bottom rounded finish --> + <rect x="1096" y="420" width="400" height="12" rx="10" + fill="#161b22" stroke="#30363d" stroke-width="1.5" opacity="0.6"/> + + <!-- ═══════════════════════════════════════════════════════════ + BOTTOM LABELS — full width + ═══════════════════════════════════════════════════════════ --> + <text x="768" y="470" + text-anchor="middle" + font-family="'SF Mono','Fira Code','Consolas',monospace" + font-size="22" font-weight="700" letter-spacing="6" + fill="#8b949e">HYPERSTACK</text> + <text x="768" y="494" + text-anchor="middle" + font-family="'SF Mono','Fira Code','Consolas',monospace" + font-size="11" font-weight="400" letter-spacing="3" + fill="#6e7681">GPU · PI.DEV · FREEBSD · AI · TMUX</text> +</svg> |
