From c5816eed45ae7f2b0e02129f531710cd8a3ecbee Mon Sep 17 00:00:00 2001 From: Gnarwhal Date: Thu, 26 Sep 2024 17:41:20 +0000 Subject: [PATCH] Add initial setup --- .gitignore | 1 + public/assets/css/theme-gitdotgay-dark.css | 622 ++++++++++++++++++++ public/assets/css/theme-gitdotgay-light.css | 390 ++++++++++++ public/assets/css/theme-gitdotgay.css | 2 + public/assets/img/apple-touch-icon.png | Bin 0 -> 4478 bytes public/assets/img/favicon.png | Bin 0 -> 4639 bytes public/assets/img/favicon.svg | 15 + public/assets/img/forgejo-loading.svg | 30 + public/assets/img/logo.png | Bin 0 -> 14964 bytes public/assets/img/logo.svg | 15 + 10 files changed, 1075 insertions(+) create mode 100644 .gitignore create mode 100644 public/assets/css/theme-gitdotgay-dark.css create mode 100644 public/assets/css/theme-gitdotgay-light.css create mode 100644 public/assets/css/theme-gitdotgay.css create mode 100644 public/assets/img/apple-touch-icon.png create mode 100644 public/assets/img/favicon.png create mode 100644 public/assets/img/favicon.svg create mode 100644 public/assets/img/forgejo-loading.svg create mode 100644 public/assets/img/logo.png create mode 100644 public/assets/img/logo.svg diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..3b7e381 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +conf/ diff --git a/public/assets/css/theme-gitdotgay-dark.css b/public/assets/css/theme-gitdotgay-dark.css new file mode 100644 index 0000000..a60947c --- /dev/null +++ b/public/assets/css/theme-gitdotgay-dark.css @@ -0,0 +1,622 @@ +.chroma .bp { + color: #fabd2f; +} /* NameBuiltinPseudo */ +.chroma .c { + color: #777e94; +} /* Comment */ +.chroma .c1 { + color: #777e94; +} /* CommentSingle */ +.chroma .ch { + color: #777e94; +} /* CommentHashbang */ +.chroma .cm { + color: #777e94; +} /* CommentMultiline */ +.chroma .cp { + color: #8ec07c; +} /* CommentPreproc */ +.chroma .cpf { + color: #649bc4; +} /* CommentPreprocFile */ +.chroma .cs { + color: #9075cd; +} /* CommentSpecial */ +.chroma .dl { + color: #649bc4; +} /* LiteralStringDelimiter */ +/* .chroma .fm {} NameFunctionMagic */ +/* .chroma .g {} Generic */ +.chroma .gd { + color: #ffffff; + background-color: #5f3737; +} /* GenericDeleted */ +.chroma .ge { + color: #ddee30; +} /* GenericEmph */ +.chroma .gh { + color: #ffaa10; +} /* GenericHeading */ +.chroma .gi { + color: #ffffff; + background-color: #3a523a; +} /* GenericInserted */ +/* .chroma .gl {} GenericUnderline */ +.chroma .go { + color: #777e94; +} /* GenericOutput */ +.chroma .gp { + color: #ebdbb2; +} /* GenericPrompt */ +.chroma .gr { + color: #ff4433; +} /* GenericError */ +.chroma .gs { + color: #ebdbb2; +} /* GenericStrong */ +.chroma .gt { + color: #ff7540; +} /* GenericTraceback */ +.chroma .gu { + color: #b8bb26; +} /* GenericSubheading */ +.chroma .il { + color: #649bc4; +} /* LiteralNumberIntegerLong */ +.chroma .k { + color: #ff7540; +} /* Keyword */ +.chroma .kc { + color: #649bc4; +} /* KeywordConstant */ +.chroma .kd { + color: #ff7540; +} /* KeywordDeclaration */ +.chroma .kn { + color: #ffaa10; +} /* KeywordNamespace */ +.chroma .kp { + color: #5f8700; +} /* KeywordPseudo */ +.chroma .kr { + color: #ff7540; +} /* KeywordReserved */ +.chroma .kt { + color: #ff7b72; +} /* KeywordType */ +/* .chroma .l {} Literal */ +/* .chroma .ld {} LiteralDate */ +.chroma .m { + color: #649bc4; +} /* LiteralNumber */ +.chroma .mb { + color: #649bc4; +} /* LiteralNumberBin */ +.chroma .mf { + color: #649bc4; +} /* LiteralNumberFloat */ +.chroma .mh { + color: #649bc4; +} /* LiteralNumberHex */ +.chroma .mi { + color: #649bc4; +} /* LiteralNumberInteger */ +.chroma .mo { + color: #649bc4; +} /* LiteralNumberOct */ +.chroma .n { + color: #c9d1d9; +} /* Name */ +.chroma .na { + color: #b8bb26; +} /* NameAttribute */ +.chroma .nb { + color: #fabd2f; +} /* NameBuiltin */ +.chroma .nc { + color: #ffaa10; +} /* NameClass */ +.chroma .nd { + color: #8ec07c; +} /* NameDecorator */ +.chroma .ne { + color: #ff7540; +} /* NameException */ +.chroma .nf { + color: #fabd2f; +} /* NameFunction */ +.chroma .ni { + color: #fabd2f; +} /* NameEntity */ +.chroma .nl { + color: #ff7540; +} /* NameLabel */ +.chroma .nn { + color: #ffaa10; +} /* NameNamespace */ +.chroma .no { + color: #649bc4; +} /* NameConstant */ +.chroma .nt { + color: #ff7540; +} /* NameTag */ +.chroma .nv { + color: #ebdbb2; +} /* NameVariable */ +.chroma .nx { + color: #b6bac5; +} /* NameOther */ +.chroma .o { + color: #ff7540; +} /* Operator */ +.chroma .ow { + color: #5f8700; +} /* OperatorWord */ +.chroma .p { + color: #d2d4db; +} /* Punctuation */ +/* .chroma .py {} NameProperty */ +.chroma .s { + color: #b8bb26; +} /* LiteralString */ +.chroma .s1 { + color: #b8bb26; +} /* LiteralStringSingle */ +.chroma .s2 { + color: #b8bb26; +} /* LiteralStringDouble */ +.chroma .sa { + color: #649bc4; +} /* LiteralStringAffix */ +.chroma .sb { + color: #b8bb26; +} /* LiteralStringBacktick */ +.chroma .sc { + color: #649bc4; +} /* LiteralStringChar */ +.chroma .sd { + color: #777e94; +} /* LiteralStringDoc */ +.chroma .se { + color: #ff7540; +} /* LiteralStringEscape */ +.chroma .sh { + color: #649bc4; +} /* LiteralStringHeredoc */ +.chroma .si { + color: #ffaa10; +} /* LiteralStringInterpol */ +.chroma .sr { + color: #9075cd; +} /* LiteralStringRegex */ +.chroma .ss { + color: #ff7540; +} /* LiteralStringSymbol */ +.chroma .sx { + color: #ffaa10; +} /* LiteralStringOther */ +.chroma .vc { + color: #ff7540; +} /* NameVariableClass */ +.chroma .vg { + color: #ffaa10; +} /* NameVariableGlobal */ +.chroma .vi { + color: #ffaa10; +} /* NameVariableInstance */ +/* .chroma .vm {} NameVariableMagic */ +.chroma .w { + color: #7f8699; +} /* TextWhitespace */ + +:root { + /* not actually steel lol */ + --steel-950: #050508; + --steel-900: #10121d; + --steel-850: #131521; + --steel-800: #171926; + --steel-750: #1d1f2f; + --steel-700: #242738; + --steel-650: #2b2e42; + --steel-600: #373a51; + --steel-550: #444861; + --steel-500: #515570; + --steel-450: #5f6380; + --steel-400: #6d728f; + --steel-350: #7c819f; + --steel-300: #8c91af; + --steel-250: #9da2c0; + --steel-200: #aeb3d0; + --steel-150: #c0c4e0; + --steel-100: #d2d6f0; + --is-dark-theme: true; + --color-primary: #b66de4; + --color-primary-contrast: #000; + --color-primary-dark-1: #d89cfe; + --color-primary-dark-2: #d89cfe; + --color-primary-dark-3: #e7c1ff; + --color-primary-dark-4: #e7c1ff; + --color-primary-dark-5: #f0d9ff; + --color-primary-dark-6: #f0d9ff; + --color-primary-dark-7: #f8edff; + --color-primary-light-1: #874bad; + --color-primary-light-2: #863ab8; + --color-primary-light-3: #772aa7; + --color-primary-light-4: #5e1b88; + --color-primary-light-5: #621991; + --color-primary-light-6: #511278; + --color-primary-light-7: #410e61; + --color-primary-alpha-10: #9516e419; + --color-primary-alpha-20: #9516e433; + --color-primary-alpha-30: #9516e44b; + --color-primary-alpha-40: #9516e466; + --color-primary-alpha-50: #9516e480; + --color-primary-alpha-60: #9516e499; + --color-primary-alpha-70: #9516e4b3; + --color-primary-alpha-80: #9516e4cc; + --color-primary-alpha-90: #9516e4e1; + --color-primary-hover: var(--color-primary-light-1); + --color-primary-active: var(--color-primary-light-2); + --color-secondary: var(--steel-750); + --color-secondary-dark-1: var(--steel-550); + --color-secondary-dark-2: var(--steel-500); + --color-secondary-dark-3: var(--steel-450); + --color-secondary-dark-4: var(--steel-400); + --color-secondary-dark-5: var(--steel-350); + --color-secondary-dark-6: var(--steel-300); + --color-secondary-dark-7: var(--steel-250); + --color-secondary-dark-8: var(--steel-200); + --color-secondary-dark-9: var(--steel-150); + --color-secondary-dark-10: var(--steel-100); + --color-secondary-dark-11: var(--steel-100); + --color-secondary-dark-12: var(--steel-100); + --color-secondary-dark-13: var(--steel-100); + --color-secondary-light-1: var(--steel-650); + --color-secondary-light-2: var(--steel-700); + --color-secondary-light-3: var(--steel-750); + --color-secondary-light-4: var(--steel-800); + --color-secondary-alpha-10: #2b364219; + --color-secondary-alpha-20: #2b364233; + --color-secondary-alpha-30: #2b36424b; + --color-secondary-alpha-40: #2b364266; + --color-secondary-alpha-50: #2b364280; + --color-secondary-alpha-60: #2b364299; + --color-secondary-alpha-70: #2b3642b3; + --color-secondary-alpha-80: #2b3642cc; + --color-secondary-alpha-90: #2b3642e1; + --color-highlight-fg: var(--color-primary-light-4); + --color-highlight-bg: var(--color-primary-alpha-20); + /* colors */ + --color-red: #b91c1c; + --color-orange: #ea580c; + --color-yellow: #ca8a04; + --color-olive: #91a313; + --color-green: #15803d; + --color-teal: #0d9488; + --color-blue: #2563eb; + --color-violet: #7c3aed; + --color-purple: #9333ea; + --color-pink: #db2777; + --color-brown: #a47252; + --color-grey: var(--steel-500); + --color-black: #111827; + /* light variants */ + --color-red-light: #dc2626; + --color-orange-light: #f97316; + --color-yellow-light: #eab308; + --color-olive-light: #839311; + --color-green-light: #16a34a; + --color-teal-light: #14b8a6; + --color-blue-light: #3b82f6; + --color-violet-light: #8b5cf6; + --color-purple-light: #a855f7; + --color-pink-light: #ec4899; + --color-brown-light: #94674a; + --color-grey-light: var(--steel-300); + --color-black-light: #1f2937; + /* other colors */ + --color-gold: #b1983b; + --color-white: #ffffff; + --color-diff-removed-word-bg: #783030; + --color-diff-added-word-bg: #255c39; + --color-diff-removed-row-bg: #432121; + --color-diff-moved-row-bg: #825718; + --color-diff-added-row-bg: #1b3625; + --color-diff-removed-row-border: #783030; + --color-diff-moved-row-border: #a67a1d; + --color-diff-added-row-border: #255c39; + --color-diff-inactive: var(--steel-650); + --color-error-border: #783030; + --color-error-bg: #5f2525; + --color-error-bg-active: #783030; + --color-error-bg-hover: #783030; + --color-error-text: #fef2f2; + --color-success-border: var(--color-primary-alpha-50); + --color-success-bg: var(--color-primary-alpha-20); + --color-success-text: #f9f2fd; + --color-warning-border: #a67a1d; + --color-warning-bg: #644821; + --color-warning-text: #fefce8; + --color-info-border: #2e50b0; + --color-info-bg: #2a396b; + --color-info-text: var(--steel-100); + --color-red-badge: #b91c1c; + --color-red-badge-bg: #b91c1c22; + --color-red-badge-hover-bg: #b91c1c44; + --color-green-badge: #16a34a; + --color-green-badge-bg: #16a34a22; + --color-green-badge-hover-bg: #16a34a44; + --color-yellow-badge: #ca8a04; + --color-yellow-badge-bg: #ca8a0422; + --color-yellow-badge-hover-bg: #ca8a0444; + --color-orange-badge: #ea580c; + --color-orange-badge-bg: #ea580c22; + --color-orange-badge-hover-bg: #ea580c44; + --color-git: #f05133; + /* target-based colors */ + --color-body: var(--steel-800); + --color-box-header: var(--steel-750); + --color-box-body: var(--steel-750); + --color-box-body-highlight: var(--steel-650); + --color-text-dark: #fff; + --color-text: var(--steel-100); + --color-text-light: var(--steel-150); + --color-text-light-1: var(--steel-150); + --color-text-light-2: var(--steel-200); + --color-text-light-3: var(--steel-200); + --color-footer: var(--steel-900); + --color-timeline: var(--steel-650); + --color-input-text: var(--steel-100); + --color-input-background: var(--steel-800); + --color-input-toggle-background: var(--steel-650); + --color-input-border: var(--steel-600); + --color-input-border-hover: var(--steel-450); + --color-header-wrapper: var(--steel-900); + --color-header-wrapper-transparent: #242d3800; + --color-light: #00000028; + --color-light-mimic-enabled: rgba( + 0, + 0, + 0, + calc(40 / 255 * 222 / 255 / var(--opacity-disabled)) + ); + --color-light-border: #c0c7ff24; + --color-hover: var(--steel-700); + --color-active: var(--steel-650); + --color-menu: var(--steel-750); + --color-card: var(--steel-700); + --color-markup-table-row: #ffffff06; + --color-markup-code-block: var(--steel-800); + --color-button: var(--steel-800); + --color-code-bg: var(--steel-750); + --color-code-sidebar-bg: var(--steel-600); + --color-shadow: #00000060; + --color-secondary-bg: var(--steel-700); + --color-text-focus: #fff; + --color-expand-button: #3c404d; + --color-placeholder-text: var(--steel-450); + --color-editor-line-highlight: var(--steel-700); + --color-project-board-bg: var(--color-secondary-light-3); + --color-project-board-dark-label: var(--color-text-light-3); + --color-caret: var(--color-text); + /* should ideally be --color-text-dark, see #15651 */ + --color-reaction-bg: #ffffff12; + --color-reaction-active-bg: var(--color-primary-alpha-30); + --color-tooltip-text: #ffffff; + --color-tooltip-bg: #000000f0; + --color-nav-bg: var(--steel-900); + --color-nav-hover-bg: var(--steel-800); + --color-secondary-nav-bg: var(--steel-900); + --color-label-active-bg: #4c525e; + --color-label-text: #fff; + --color-accent: var(--color-primary-light-1); + --color-small-accent: var(--color-primary-light-5); + --color-active-line: var(--color-primary-alpha-20); + --color-label-bg: var(--steel-500); + --color-label-hover-bg: var(--steel-400); + accent-color: var(--color-accent); + color-scheme: dark; + --fonts-proportional: "DM Sans", -apple-system, "Segoe UI", system-ui, Roboto, + "Helvetica Neue", Arial; +} +.home a { + color: var(--color-primary); +} +/* invert emojis that are hard to read otherwise */ +.emoji[aria-label="check mark"], +.emoji[aria-label="currency exchange"], +.emoji[aria-label="TOP arrow"], +.emoji[aria-label="END arrow"], +.emoji[aria-label="ON! arrow"], +.emoji[aria-label="SOON arrow"], +.emoji[aria-label="heavy dollar sign"], +.emoji[aria-label="copyright"], +.emoji[aria-label="registered"], +.emoji[aria-label="trade mark"], +.emoji[aria-label="multiply"], +.emoji[aria-label="plus"], +.emoji[aria-label="minus"], +.emoji[aria-label="divide"], +.emoji[aria-label="curly loop"], +.emoji[aria-label="double curly loop"], +.emoji[aria-label="wavy dash"], +.emoji[aria-label="paw prints"], +.emoji[aria-label="musical note"], +.emoji[aria-label="musical notes"] { + filter: invert(100%) hue-rotate(180deg); +} +.following.bar.light { + border-bottom: none; +} +#navbar { + background: var(--color-nav-bg); + border-bottom: none; +} +#navbar .item { + gap: 4px; + transition: background-color 100ms cubic-bezier(0.075, 0.82, 0.165, 1); +} +#navbar .item.active { + background-color: var(--color-nav-active-bg); +} +.ui.grey.labels .label, +.ui.ui.ui.grey.label { + background-color: var(--steel-500); +} +.ui.green.labels .label, +.ui.ui.ui.green.label, +.ui.green.button, +.ui.green.buttons .button, +.ui.green.button:focus, +.ui.green.buttons .button:focus { + background: var(--color-primary); +} +.ui.green.button:hover, +.ui.green.buttons .button:hover { + background: var(--color-primary-light-1); +} +.repository #commits-table td.sha .sha.label.isSigned.isVerified, +.repository #repo-files-table .sha.label.isSigned.isVerified, +.repository #repo-file-commit-box .sha.label.isSigned.isVerified, +.repository #rev-list .sha.label.isSigned.isVerified, +.repository + .timeline-item.commits-list + .singular-commit + .sha.label.isSigned.isVerified { + border: 1px solid var(--color-primary); + background: var(--color-primary-alpha-10); +} +.repository #commits-table td.sha .sha.label.isSigned.isVerified .detail.icon, +.repository #repo-files-table .sha.label.isSigned.isVerified .detail.icon, +.repository #repo-file-commit-box .sha.label.isSigned.isVerified .detail.icon, +.repository #rev-list .sha.label.isSigned.isVerified .detail.icon, +.repository + .timeline-item.commits-list + .singular-commit + .sha.label.isSigned.isVerified + .detail.icon { + color: var(--color-primary); + border-color: var(--color-primary); +} +.repository #commits-table td.sha .sha.label.isSigned.isVerified:hover, +.repository #repo-files-table .sha.label.isSigned.isVerified:hover, +.repository #repo-file-commit-box .sha.label.isSigned.isVerified:hover, +.repository #rev-list .sha.label.isSigned.isVerified:hover, +.repository + .timeline-item.commits-list + .singular-commit + .sha.label.isSigned.isVerified:hover { + background: var(--color-primary-alpha-40) !important; +} +.text.green.svg { + color: #16a34a !important; +} +i.grey.icon.icon.icon.icon { + color: var(--steel-350) !important; +} +.ui.red.button, +.ui.negative.button { + background-color: #7f1d1d !important; + color: #fff !important; + border-color: var(--color-light-border) !important; +} +.ui.red.button:hover, +.ui.negative.button:hover { + background-color: #991b1b !important; +} +.ui.secondary.vertical.menu { + border-radius: 0.28571429rem !important; + overflow: hidden; +} +.ui.secondary.vertical.menu > .item { + border-radius: 0 !important; +} +.ui.basic.primary.button.item { + background-color: var(--color-active) !important; + color: var(--color-text) !important; + box-shadow: none !important; +} +.ui.red.label.notification_count, +.ui.primary.label, +.ui.primary.labels .label { + background-color: var(--color-primary-light-3) !important; +} +.repository.view.issue .comment-list .code-comment + .code-comment { + margin: 1.25rem 0 !important; + padding-top: 1.25rem !important; + border-top-color: var(--steel-650) !important; +} +.ui.labeled.icon.buttons > .button > .icon, +.ui.labeled.icon.button > .icon { + background-color: rgba(0, 0, 0, 0.05) !important; +} +#review-box .review-comments-counter { + background-color: #00000088 !important; + color: #fff !important; + margin-left: 0.5em; +} +.ui.tabs .ui.primary.label, +.ui.menu .ui.primary.label { + background-color: rgba(192, 192, 255, 0.2) !important; + color: var(--color-text-dark) !important; +} +.ui.basic.yellow.label.pending-label { + background: var(--color-light) !important; +} +.ui.tertiary.button { + color: #fff9; +} +.ui.tertiary.button:hover { + color: #ccc; +} +.user.list .item .header { + display: flex; + flex-direction: row-reverse; + width: fit-content; + gap: 4px; +} +.user.list .item .header a::before { + content: "@"; +} +.user.profile .ui.card { + background: none; + border: none; +} +.user.profile .profile-avatar-name .username.text:first-child { + font-weight: var(--font-weight-bold); + font-size: 1.3rem; +} +.user.profile .profile-avatar-name .username.text::before { + content: "@"; +} +.page h1.ui.header { + font-size: 2rem !important; +} +.home .hero .svg { + color: inherit; + margin-bottom: 16px !important; +} + +/* friendlycaptcha */ +.frc-captcha.frc-captcha, +.frc-captcha.frc-captcha.dark { + border-color: var(--color-input-border); + background: var(--color-input-background); + border-radius: .28571429rem; + color: inherit; +} +.frc-captcha.frc-captcha *, +.frc-captcha.frc-captcha.dark * { + color: inherit; +} +.frc-captcha.frc-captcha.dark .frc-button, +.frc-captcha.frc-captcha .frc-button { + border-color: var(--color-input-border); + background: none; + border-radius: 2px; + transition: background .1s ease !important; +} +.frc-captcha.frc-captcha.dark .frc-button:hover, +.frc-captcha.frc-captcha .frc-button:hover { + background: var(--color-hover); +} diff --git a/public/assets/css/theme-gitdotgay-light.css b/public/assets/css/theme-gitdotgay-light.css new file mode 100644 index 0000000..ed00951 --- /dev/null +++ b/public/assets/css/theme-gitdotgay-light.css @@ -0,0 +1,390 @@ +@import "../chroma/light.css"; +@import "../codemirror/light.css"; + +:root { + /* not actually steel lol */ + --steel-950: #050508; + --steel-900: #10121D; + --steel-850: #141623; + --steel-800: #1A1C2B; + --steel-750: #212336; + --steel-700: #2A2D41; + --steel-650: #353952; + --steel-600: #414560; + --steel-550: #4F5471; + --steel-500: #616686; + --steel-450: #73789B; + --steel-400: #8186A8; + --steel-350: #9095B5; + --steel-300: #A6ABCB; + --steel-250: #B9BEDB; + --steel-200: #CCD0EA; + --steel-150: #DCDFF6; + --steel-100: #E9EBFC; + --color-primary: #a348dc; + --color-primary-contrast: #000; + --color-primary-dark-1: #874bad; + --color-primary-dark-2: #863ab8; + --color-primary-dark-3: #772aa7; + --color-primary-dark-4: #5e1b88; + --color-primary-dark-5: #621991; + --color-primary-dark-6: #511278; + --color-primary-dark-7: #410e61; + --color-primary-light-1: #d89cfe; + --color-primary-light-2: #d89cfe; + --color-primary-light-3: #e7c1ff; + --color-primary-light-4: #e7c1ff; + --color-primary-light-5: #f0d9ff; + --color-primary-light-6: #f0d9ff; + --color-primary-light-7: #f8edff; + --color-primary-alpha-10: #9516e419; + --color-primary-alpha-20: #9516e433; + --color-primary-alpha-30: #9516e44b; + --color-primary-alpha-40: #9516e466; + --color-primary-alpha-50: #9516e480; + --color-primary-alpha-60: #9516e499; + --color-primary-alpha-70: #9516e4b3; + --color-primary-alpha-80: #9516e4cc; + --color-primary-alpha-90: #9516e4e1; + --color-primary-hover: var(--color-primary-light-1); + --color-primary-active: var(--color-primary-light-2); + --color-secondary: var(--steel-100); + --color-secondary-dark-1: var(--steel-550); + --color-secondary-dark-2: var(--steel-500); + --color-secondary-dark-3: var(--steel-450); + --color-secondary-dark-4: var(--steel-400); + --color-secondary-dark-5: var(--steel-350); + --color-secondary-dark-6: var(--steel-300); + --color-secondary-dark-7: var(--steel-250); + --color-secondary-dark-8: var(--steel-200); + --color-secondary-dark-9: var(--steel-150); + --color-secondary-dark-10: var(--steel-100); + --color-secondary-dark-11: var(--steel-100); + --color-secondary-dark-12: var(--steel-100); + --color-secondary-dark-13: var(--steel-100); + --color-secondary-light-1: var(--color-secondary-alpha-10); + --color-secondary-light-2: var(--steel-100); + --color-secondary-light-3: var(--steel-150); + --color-secondary-light-4: var(--steel-200); + --color-secondary-alpha-10: #aeb3d019; + --color-secondary-alpha-20: #aeb3d033; + --color-secondary-alpha-30: #aeb3d04b; + --color-secondary-alpha-40: #aeb3d066; + --color-secondary-alpha-50: #aeb3d080; + --color-secondary-alpha-60: #aeb3d099; + --color-secondary-alpha-70: #aeb3d0b3; + --color-secondary-alpha-80: #aeb3d0cc; + --color-secondary-alpha-90: #aeb3d0e1; + --color-highlight-fg: var(--color-primary-light-4); + --color-highlight-bg: var(--color-primary-alpha-20); + /* colors */ + --color-red: #b91c1c; + --color-orange: #ea580c; + --color-yellow: #ca8a04; + --color-olive: #91a313; + --color-green: #15803d; + --color-teal: #0d9488; + --color-blue: #2563eb; + --color-violet: #7c3aed; + --color-purple: #9333ea; + --color-pink: #db2777; + --color-brown: #a47252; + --color-grey: var(--steel-500); + --color-black: #111827; + /* light variants */ + --color-red-light: #dc2626; + --color-orange-light: #f97316; + --color-yellow-light: #eab308; + --color-olive-light: #839311; + --color-green-light: #16a34a; + --color-teal-light: #14b8a6; + --color-blue-light: #3b82f6; + --color-violet-light: #8b5cf6; + --color-purple-light: #a855f7; + --color-pink-light: #ec4899; + --color-brown-light: #94674a; + --color-grey-light: var(--steel-300); + --color-black-light: #1f2937; + /* other colors */ + --color-gold: #b1983b; + --color-white: #ffffff; + --color-diff-removed-word-bg: #ff4b4b4a; + --color-diff-added-word-bg: #18f57c4a; + --color-diff-removed-row-bg: #ff4b4b1a; + --color-diff-moved-row-bg: #d18e2d1a; + --color-diff-added-row-bg: #18f57c1a; + --color-diff-removed-row-border: #ff4b4b; + --color-diff-moved-row-border: #d18e2d; + --color-diff-added-row-border: #18f57c; + --color-diff-inactive: var(--steel-350); + --color-error-border: #783030; + --color-error-bg: #942222; + --color-error-bg-active: #783030; + --color-error-bg-hover: #783030; + --color-error-text: #fef2f2; + --color-success-border: var(--color-primary-alpha-50); + --color-success-bg: var(--color-primary-alpha-20); + --color-success-text: #f9f2fd; + --color-warning-border: #a67a1d; + --color-warning-bg: #644821; + --color-warning-text: #fefce8; + --color-info-border: #2e50b0; + --color-info-bg: #2a396b; + --color-info-text: var(--steel-100); + --color-red-badge: #b91c1c; + --color-red-badge-bg: #b91c1c22; + --color-red-badge-hover-bg: #b91c1c44; + --color-green-badge: #16a34a; + --color-green-badge-bg: #16a34a22; + --color-green-badge-hover-bg: #16a34a44; + --color-yellow-badge: #ca8a04; + --color-yellow-badge-bg: #ca8a0422; + --color-yellow-badge-hover-bg: #ca8a0444; + --color-orange-badge: #ea580c; + --color-orange-badge-bg: #ea580c22; + --color-orange-badge-hover-bg: #ea580c44; + --color-git: #f05133; + /* target-based colors */ + --color-body: #fff; + --color-box-header: var(--steel-100); + --color-box-body: var(--steel-100); + --color-box-body-highlight: var(--steel-200); + --color-text-dark: #000; + --color-text: var(--steel-900); + --color-text-light: var(--steel-600); + --color-text-light-1: var(--steel-500); + --color-text-light-2: var(--steel-550); + --color-text-light-3: var(--steel-600); + --color-footer: var(--steel-100); + --color-timeline: var(--steel-200); + --color-input-text: var(--steel-800); + --color-input-background: var(--steel-100); + --color-input-toggle-background: var(--steel-650); + --color-input-border: var(--steel-400); + --color-input-border-hover: var(--steel-450); + --color-header-wrapper: var(--steel-200); + --color-header-wrapper-transparent: #242d3800; + --color-light: var(--steel-150); + --color-light-mimic-enabled: rgba( + 0, + 0, + 0, + calc(40 / 255 * 222 / 255 / var(--opacity-disabled)) + ); + --color-light-border: #1e202e24; + --color-hover: var(--steel-150); + --color-active: var(--steel-250); + --color-menu: var(--steel-100); + --color-card: var(--steel-100); + --color-markup-table-row: #ffffff06; + --color-markup-code-block: var(--steel-150); + --color-button: var(--steel-100); + --color-code-bg: var(--steel-100); + --color-code-sidebar-bg: var(--steel-600); + --color-shadow: #00000060; + --color-secondary-bg: var(--steel-700); + --color-text-focus: #fff; + --color-expand-button: var(--steel-200); + --color-placeholder-text: var(--steel-450); + --color-editor-line-highlight: var(--steel-150); + --color-project-board-bg: var(--color-secondary-light-3); + --color-project-board-dark-label: var(--color-text-light-3); + --color-caret: var(--color-text); + /* should ideally be --color-text-dark, see #15651 */ + --color-reaction-bg: #ffffff12; + --color-reaction-active-bg: var(--color-primary-alpha-30); + --color-tooltip-text: #000000; + --color-tooltip-bg: #fffffff0; + --color-nav-bg: var(--steel-150); + --color-nav-hover-bg: var(--steel-250); + --color-secondary-nav-bg: var(--steel-150); + --color-label-active-bg: #4c525e; + --color-label-text: var(--steel-700); + --color-accent: var(--color-primary-light-1); + --color-small-accent: var(--color-primary-light-5); + --color-active-line: var(--color-primary-alpha-20); + --color-label-bg: var(--color-secondary-alpha-30); + --color-label-hover-bg: var(--steel-400); + accent-color: var(--color-accent); + color-scheme: light; + --fonts-proportional: "DM Sans", -apple-system, "Segoe UI", system-ui, Roboto, + "Helvetica Neue", Arial; +} +.home a { + color: var(--color-primary); +} +.following.bar.light { + border-bottom: none; +} +#navbar { + background: var(--color-nav-bg); + border-bottom: none; +} +#navbar .item { + gap: 4px; + transition: background-color 100ms cubic-bezier(0.075, 0.82, 0.165, 1); +} +#navbar .item.active { + background-color: var(--color-nav-active-bg); +} +.ui.grey.labels .label, +.ui.ui.ui.grey.label { + background-color: var(--steel-500); +} +.ui.green.labels .label, +.ui.ui.ui.green.label, +.ui.green.button, +.ui.green.buttons .button, +.ui.green.button:focus, +.ui.green.buttons .button:focus { + background: var(--color-primary); +} +.ui.green.button:hover, +.ui.green.buttons .button:hover { + background: var(--color-primary-light-1); +} +.repository #commits-table td.sha .sha.label.isSigned.isVerified, +.repository #repo-files-table .sha.label.isSigned.isVerified, +.repository #repo-file-commit-box .sha.label.isSigned.isVerified, +.repository #rev-list .sha.label.isSigned.isVerified, +.repository + .timeline-item.commits-list + .singular-commit + .sha.label.isSigned.isVerified { + border: 1px solid var(--color-primary); + background: var(--color-primary-alpha-10); +} +.repository #commits-table td.sha .sha.label.isSigned.isVerified .detail.icon, +.repository #repo-files-table .sha.label.isSigned.isVerified .detail.icon, +.repository #repo-file-commit-box .sha.label.isSigned.isVerified .detail.icon, +.repository #rev-list .sha.label.isSigned.isVerified .detail.icon, +.repository + .timeline-item.commits-list + .singular-commit + .sha.label.isSigned.isVerified + .detail.icon { + color: var(--color-primary); + border-color: var(--color-primary); +} +.repository #commits-table td.sha .sha.label.isSigned.isVerified:hover, +.repository #repo-files-table .sha.label.isSigned.isVerified:hover, +.repository #repo-file-commit-box .sha.label.isSigned.isVerified:hover, +.repository #rev-list .sha.label.isSigned.isVerified:hover, +.repository + .timeline-item.commits-list + .singular-commit + .sha.label.isSigned.isVerified:hover { + background: var(--color-primary-alpha-40) !important; +} +.text.green.svg { + color: #16a34a !important; +} +i.grey.icon.icon.icon.icon { + color: var(--steel-350) !important; +} +.ui.red.button, +.ui.negative.button { + background-color: #c35959 !important; + color: #fff !important; + border-color: var(--color-light-border) !important; +} +.ui.red.button:hover, +.ui.negative.button:hover { + background-color: #991b1b !important; +} +.ui.secondary.vertical.menu { + border-radius: 0.28571429rem !important; + overflow: hidden; +} +.ui.secondary.vertical.menu > .item { + border-radius: 0 !important; +} +.ui.basic.primary.button.item { + background-color: var(--color-active) !important; + color: var(--color-text) !important; + box-shadow: none !important; +} +.ui.red.label.notification_count, +.ui.primary.label, +.ui.primary.labels .label { + background-color: var(--color-primary-light-3) !important; +} +.repository.view.issue .comment-list .code-comment + .code-comment { + margin: 1.25rem 0 !important; + padding-top: 1.25rem !important; + border-top-color: var(--steel-650) !important; +} +.ui.labeled.icon.buttons > .button > .icon, +.ui.labeled.icon.button > .icon { + background-color: rgba(0, 0, 0, 0.05) !important; +} +#review-box .review-comments-counter { + background-color: #00000088 !important; + color: #fff !important; + margin-left: 0.5em; +} +.ui.tabs .ui.primary.label, +.ui.menu .ui.primary.label { + background-color: rgba(192, 192, 255, 0.2) !important; + color: var(--color-text-dark) !important; +} +.ui.basic.yellow.label.pending-label { + background: var(--color-light) !important; +} +.ui.tertiary.button { + color: #fff9; +} +.ui.tertiary.button:hover { + color: #ccc; +} +.user.list .item .header { + display: flex; + flex-direction: row-reverse; + width: fit-content; + gap: 4px; +} +.user.list .item .header a::before { + content: "@"; +} +.user.profile .ui.card { + background: none; + border: none; +} +.user.profile .profile-avatar-name .username.text:first-child { + font-weight: var(--font-weight-bold); + font-size: 1.3rem; +} +.user.profile .profile-avatar-name .username.text::before { + content: "@"; +} +.page h1.ui.header { + font-size: 2rem !important; +} +.home .hero .svg { + color: inherit; + margin-bottom: 16px !important; +} + +/* friendlycaptcha */ +.frc-captcha.frc-captcha, +.frc-captcha.frc-captcha.dark { + border-color: var(--color-input-border); + background: var(--color-input-background); + border-radius: .28571429rem; + color: inherit; +} +.frc-captcha.frc-captcha *, +.frc-captcha.frc-captcha.dark * { + color: inherit; +} +.frc-captcha.frc-captcha.dark .frc-button, +.frc-captcha.frc-captcha .frc-button { + border-color: var(--color-input-border); + background: none; + border-radius: 2px; + transition: background .1s ease !important; +} +.frc-captcha.frc-captcha.dark .frc-button:hover, +.frc-captcha.frc-captcha .frc-button:hover { + background: var(--color-hover); +} diff --git a/public/assets/css/theme-gitdotgay.css b/public/assets/css/theme-gitdotgay.css new file mode 100644 index 0000000..f9e76fa --- /dev/null +++ b/public/assets/css/theme-gitdotgay.css @@ -0,0 +1,2 @@ +@import "theme-gitdotgay-light.css"; +@import "theme-gitdotgay-dark.css" (prefers-color-scheme: dark); diff --git a/public/assets/img/apple-touch-icon.png b/public/assets/img/apple-touch-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..e50d4481f9b271fb4e558c4683ab0d34f72cb095 GIT binary patch literal 4478 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 JZY|6y_J6JVbpZeX literal 0 HcmV?d00001 diff --git a/public/assets/img/favicon.png b/public/assets/img/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..dfb6dde24095d8fa2dd2d2d2e9dac2b1710d3d7e GIT binary patch literal 4639 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 Q_}l@Q8d)Lg4Lt7t5AK7?Y5)KL literal 0 HcmV?d00001 diff --git a/public/assets/img/favicon.svg b/public/assets/img/favicon.svg new file mode 100644 index 0000000..7c2ea18 --- /dev/null +++ b/public/assets/img/favicon.svg @@ -0,0 +1,15 @@ + + diff --git a/public/assets/img/forgejo-loading.svg b/public/assets/img/forgejo-loading.svg new file mode 100644 index 0000000..4b19bbe --- /dev/null +++ b/public/assets/img/forgejo-loading.svg @@ -0,0 +1,30 @@ + + diff --git a/public/assets/img/logo.png b/public/assets/img/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..000081a926353c92ba1b599436e69d8ecfd38c98 GIT binary patch literal 14964 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 literal 0 HcmV?d00001 diff --git a/public/assets/img/logo.svg b/public/assets/img/logo.svg new file mode 100644 index 0000000..7c2ea18 --- /dev/null +++ b/public/assets/img/logo.svg @@ -0,0 +1,15 @@ + +