Compare commits
6 Commits
7bc4d0f536
...
c979c0db81
Author | SHA1 | Date | |
---|---|---|---|
c979c0db81 | |||
a863ce2f9d | |||
b9caa21536 | |||
06bcbd063d | |||
69b78a41a2 | |||
ea24b3547b |
16
.env.example
@ -2,14 +2,12 @@ ALGOLIA_APP_ID=
|
||||
ALGOLIA_API_KEY=
|
||||
ALGOLIA_INDEX_NAME=
|
||||
|
||||
GISCUS_DISCUSSION_CATEGORY=
|
||||
GISCUS_DISCUSSION_CATEGORY_ID=
|
||||
GISCUS_PROJECT_ID=
|
||||
COUNTER_GOOGLE=
|
||||
COUNTER_YANDEX=
|
||||
|
||||
GOOGLE_ANALYTICS_TAG_ID=
|
||||
|
||||
ORGANIZATION_NAME=
|
||||
REPOSITORY_NAME=
|
||||
|
||||
SITE_TITLE=
|
||||
SITE_URL=
|
||||
SITE_TITLE=
|
||||
SITE_ORANIZATION_NAME=
|
||||
SITE_PROJECT_NAME=
|
||||
|
||||
# GISCUS settings in /src/theme/BlogPostItem.jsx
|
||||
|
1
blog/blog-setup/assets/algolia.svg
Normal file
After Width: | Height: | Size: 4.9 KiB |
BIN
blog/blog-setup/assets/blog.png
Normal file
After Width: | Height: | Size: 16 KiB |
BIN
blog/blog-setup/assets/cloudflare.png
Normal file
After Width: | Height: | Size: 5.1 KiB |
1
blog/blog-setup/assets/docusaurus.svg
Normal file
After Width: | Height: | Size: 13 KiB |
BIN
blog/blog-setup/assets/logo.psd
Normal file
BIN
blog/blog-setup/assets/nginx.png
Normal file
After Width: | Height: | Size: 21 KiB |
@ -15,34 +15,177 @@ date: 2023-12-15
|
||||
|
||||
## Введение
|
||||
|
||||
[Зачем это вообще надо и кому нужен блог]
|
||||
Блог DevOps программиста (меня) – это не просто место для записей о технических деталях, это своеобразная платформа для обмена опытом, решением трудностей и создания сообщества профессионалов в области разработки и операций. Давайте разберемся, почему блог DevOps программиста может стать неотъемлемой частью вашей профессиональной деятельности.
|
||||
|
||||
### Зачем это вообще нужно?
|
||||
|
||||
#### 1. Обмен опытом
|
||||
|
||||
DevOps – это область, где опыт имеет огромное значение. Через блог вы можете делиться своими наработками, лучшими практиками и решениями, с которыми вы сталкиваетесь в ходе своей работы.
|
||||
|
||||
#### 2. Инструменты и технологии
|
||||
|
||||
В мире DevOps постоянно появляются новые инструменты и технологии. Блогирование поможет вам оставаться в курсе последних трендов, а также делиться своим опытом использования различных инструментов.
|
||||
|
||||
#### 3. Сообщество
|
||||
|
||||
Блог DevOps программиста – это место, где вы можете объединиться с другими специалистами, обсудить актуальные вопросы, получить обратную связь и даже решить технические проблемы вместе.
|
||||
|
||||
### Кому нужен блог?
|
||||
|
||||
#### 1. Стартапы и компании
|
||||
|
||||
DevOps является ключевым элементом успешного развертывания и управления IT-инфраструктурой. Ваш блог может быть полезным ресурсом для стартапов и компаний, которые стремятся оптимизировать свои процессы.
|
||||
|
||||
#### 2. Новички в сфере DevOps
|
||||
|
||||
Для тех, кто только начинает свой путь в DevOps, ваш блог станет ценным ресурсом для обучения и понимания основных принципов и практик.
|
||||
|
||||
#### 3. Специалисты по технологиям и разработке
|
||||
|
||||
Блог DevOps программиста может привлечь внимание специалистов в области технологий и разработки, помогая им лучше понять взаимосвязь между разработкой и операциями.
|
||||
|
||||
По мере продвижения в этом блоге мы рассмотрим шаги по созданию и установке вашего собственного блога DevOps программиста на вашем веб-сайте.
|
||||
|
||||
## Настройка сайта
|
||||
- <p style={{fontSize: '12px', margin: "0"}}>Если сайт уже есть, то пеерходите сразу к <a href="#установка-блога">установке блога</a></p>
|
||||
|
||||
### Покупка домена
|
||||
|
||||
[Идём на регистратор и покупаем]
|
||||
Первым шагом к созданию собственного блога является приобретение уникального доменного имени.\
|
||||
Выберите короткое, запоминающееся и отражающее суть вашего блога имя. После выбора, зарегистрируйте домен у одного из регистраторов доменных имен.\
|
||||
Лично я выбрал свой ник в качестве домена.
|
||||
|
||||
На данные момент популярны такие сервисы для регистрации доменов в РФ:
|
||||
1. [РЕГ.РУ](https://reg.ru) (за `.ru` 119/р в первый год, 999/р последующие года)
|
||||
2. [RU-CENTER (NIC)](https://nic.ru) (за `.ru` 189/р в первый год, 999/р последующие года)
|
||||
|
||||
**Для регистрации обязателен паспорт**
|
||||
|
||||
### Настройка DNS
|
||||
|
||||
[Находим бесплатный DNS сервер и писхаем туда ip]
|
||||
После приобретения домена переходите к настройке DNS. Найдите бесплатный DNS-сервер и настройте записи, указывающие на IP-адрес вашего хостинга. Это обеспечит корректное направление запросов к вашему сайту.\
|
||||
Или можно привязать к сайт [CloudFlare](https://dash.cloudflare.com/), в целом бесплатно + SSL + есть защита от аттак\
|
||||
**Так же подразумевается, что хост с белым IP уже есть.**
|
||||
|
||||
### Настройка WEB сервера
|
||||
|
||||
[Тут будет как настроить nginx на выдачу index.html + certbot]
|
||||
Теперь приступим к настройке вашего веб-сервера. В данном случае, рассмотрим пример с использованием Nginx и получением SSL-сертификата с помощью Certbot.
|
||||
|
||||
Установка Nginx:
|
||||
|
||||
```bash
|
||||
sudo apt update
|
||||
sudo apt install nginx snap
|
||||
```
|
||||
|
||||
Настройка Nginx для сайта:
|
||||
В файле конфигурации Nginx (`/etc/nginx/sites-available/default`) добавьте следующие строки:
|
||||
|
||||
```nginx
|
||||
server {
|
||||
listen 80;
|
||||
server_name santaspeen.ru;
|
||||
|
||||
root /var/www/blog/;
|
||||
index index.html;
|
||||
|
||||
location / {
|
||||
add_header Cache-Control no-cache;
|
||||
expires 0;
|
||||
try_files $uri $uri/ /index.html;
|
||||
}
|
||||
|
||||
# Media: images, icons, video, audio, HTC
|
||||
location ~* \.(?:jpg|jpeg|gif|png|ico|cur|gz|svg|svgz|mp4|mp3|ogg|ogv|webm|htc)$ {
|
||||
expires 1M;
|
||||
access_log off;
|
||||
add_header Cache-Control "public";
|
||||
}
|
||||
|
||||
# Javascript and CSS files
|
||||
location ~* \.(?:css|js)$ {
|
||||
expires 1y;
|
||||
access_log off;
|
||||
add_header Cache-Control "public";
|
||||
try_files $uri =404;
|
||||
}
|
||||
|
||||
# Any route containing a file extension (e.g. /devicesfile.js)
|
||||
location ~ ^.+\..+$ {
|
||||
try_files $uri =404;
|
||||
}
|
||||
}
|
||||
```
|
||||
Не забудьте изменить `santaspeen.ru` и `/var/www/blog/` под свои данные.
|
||||
|
||||
:::tip
|
||||
Если не использовать cloudflare, то SSL аертификаты нужно получить на хосте\
|
||||
Установим Certbot для получения SSL-сертификата:
|
||||
|
||||
```bash
|
||||
sudo snap install --classic certbot
|
||||
sudo ln -s /snap/bin/certbot /usr/bin/certbot
|
||||
```
|
||||
|
||||
С помощью этой комнды автоматически будет настроено SSL шифрование трафика\
|
||||
`certbot` спросит все нужные ему данные: домен, почту и т.д.
|
||||
```bash
|
||||
sudo certbot --nginx
|
||||
```
|
||||
|
||||
:::
|
||||
|
||||
Теперь, после всего что мы сделали, У нас будет доступ по https: https://santaspeen.ru/
|
||||
|
||||
|
||||
## Установка блога
|
||||
|
||||
:::tip
|
||||
Настройку / Написание текста / Проверку - советую делать на компе, а затем после `npm build` загружать на хостинг.
|
||||
:::
|
||||
|
||||
### Качаем
|
||||
### Загрузка
|
||||
|
||||
[тут гит клон]
|
||||
Давайте начнем с загрузки необходимых файлов для вашего блога. Вы можете воспользоваться командой git clone для получения исходного кода блога:
|
||||
|
||||
```bash
|
||||
git clone https://github.com/SantaSpeen/santaspeen.ru-blog.git -b v1-ready
|
||||
```
|
||||
|
||||
### Установка зависимостей
|
||||
|
||||
Убедитесь, что вы используете Node.js версии 20. Вы можете загрузить и установить ее с официального сайта Node.js: [Node20](https://nodejs.org/download/release/latest-v20.x/)
|
||||
Перейдите в директорию вашего блога и выполните команду `npm install`, чтобы установить все необходимые зависимости:
|
||||
|
||||
```bash
|
||||
cd santaspeen.ru-blog
|
||||
npm install
|
||||
```
|
||||
|
||||
### Запуск
|
||||
|
||||
1. **Настройка статических файлов:**
|
||||
- Проверьте и отредактируйте файлы в папке `static`:
|
||||
- `static/CNAME`: Укажите ваш домен в этом файле.
|
||||
- `static/robots.txt`: При необходимости настройте файл robots.txt.
|
||||
- `static/img/favicon.ico`: Замените иконку на свою.
|
||||
|
||||
2. **Настройка переменных окружения:**
|
||||
- Отредактируйте файл `.env`, указав необходимые параметры.
|
||||
|
||||
3. **Настройка конфигурации:**
|
||||
- При необходимости внесите изменения в файл `.aligoria_config.json` в соответствии с вашими предпочтениями.
|
||||
|
||||
4. **Запуск:**
|
||||
- Выполните команду `npm start` для запуска дебаг сервер блогом (при редактировании файлов, содержимое сразу будет обновлено и на сайте).
|
||||
|
||||
## Настройка блога
|
||||
|
||||
### Общая структура
|
||||
|
||||
Вот так сейчас выглядит структура файлов блога:
|
||||
Вот так сейчас выглядит структура файлов блога и доков:
|
||||
|
||||
```plain
|
||||
...
|
||||
| -- blog
|
||||
@ -62,13 +205,18 @@ date: 2023-12-15
|
||||
...
|
||||
```
|
||||
|
||||
[Тут надо рассказать про основные файлы]
|
||||
### Основные файлы
|
||||
|
||||
- **`blog/_template/index.md`:** Главная страница блога.
|
||||
- **`blog/_template/logo.png`:** Логотип блога.
|
||||
- **`docs/_template/_category_.json`:** Файл категории для организации документации.
|
||||
- **`docs/_template/doc1.md` и `docs/_template/doc2.md`:** Примеры документации.
|
||||
- **`docs/intro.md`:** Введение в документацию.
|
||||
|
||||
### Cтруктура блогов
|
||||
|
||||
[Несколько слов про то, или инное, рассмотрим на примере blog._template]
|
||||
Приведем пример для блога `_template`:
|
||||
|
||||
[Стандартная структура 1 блога]
|
||||
```plain
|
||||
| -- blog
|
||||
| ` -- _template
|
||||
@ -76,12 +224,13 @@ date: 2023-12-15
|
||||
| ` -- logo.png
|
||||
```
|
||||
|
||||
##### Заголовок у блога
|
||||
##### Пример заголовка блога (`blog/_template/index.md`):
|
||||
|
||||
```md
|
||||
---
|
||||
slug: template
|
||||
title: title
|
||||
description: Описание
|
||||
title: Заголовок блога
|
||||
description: Описание блога
|
||||
image: ./logo.png
|
||||
tags: [docker, linux, networks]
|
||||
keywords: [docker, linux]
|
||||
@ -90,26 +239,25 @@ date: 2023-11-29
|
||||
|
||||
Описание для предварительного просмотра на главной странице
|
||||
|
||||
[](/blog/_template)
|
||||
[](/blog/_template)
|
||||
<!--truncate-->
|
||||
|
||||
Этот текст будет только в блоге, его не видно в превью
|
||||
```
|
||||
|
||||
`slug` - [Это..]\
|
||||
`title` - [Это..]\
|
||||
`description` - [Это..]\
|
||||
`image` - [Это..]\
|
||||
`keywords` - [Это..]\
|
||||
`date` - [Это...]\
|
||||
\
|
||||
`<!--truncate-->` - [Это...]
|
||||
- `slug`: уникальный идентификатор блога.
|
||||
- `title`: заголовок блога.
|
||||
- `description`: описание блога.
|
||||
- `image`: путь к логотипу блога.
|
||||
- `tags`: теги блога.
|
||||
- `keywords`: ключевые слова для поисковых систем.
|
||||
- `date`: дата публикации блога.
|
||||
- `<!--truncate-->`: разделитель для превью.
|
||||
|
||||
### Структура документации
|
||||
|
||||
### Структура доков
|
||||
Приведем пример для документации `_template`:
|
||||
|
||||
[Несколько слов про то, или инное, рассмотрим на примере docs._template]
|
||||
|
||||
|
||||
[Стандартная структура 1 дока]
|
||||
```plain
|
||||
| -- docs
|
||||
| | -- _template
|
||||
@ -119,51 +267,41 @@ date: 2023-11-29
|
||||
| ` -- intro.md
|
||||
```
|
||||
|
||||
[_category_.json Обязателен, рассказать что в нём]
|
||||
##### Содержимое `_category_.json` в `docs/_template/_category_.json`:
|
||||
|
||||
Содержимое \<theme>/_category_.json
|
||||
```json
|
||||
{
|
||||
"label": "Template",
|
||||
"position": 1,
|
||||
"link": {
|
||||
"type": "generated-index",
|
||||
"description": "Template description"
|
||||
"description": "Описание шаблона"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
`label` - [Это..]\
|
||||
`position` - [Это..]\
|
||||
`link` - [Это..]\
|
||||
`link.type` - [Это..]\
|
||||
`link.description` - []
|
||||
- `label`: название категории.
|
||||
- `position`: позиция в навигации.
|
||||
- `link.type`: тип ссылки (здесь генерируется индекс).
|
||||
- `link.description`: описание ссылки.
|
||||
|
||||
##### Заголовок у доков
|
||||
[У каждого файла должен быть заголовок... Зачем? Почему?]
|
||||
##### Пример заголовка документа (`docs/_template/doc1.md`):
|
||||
|
||||
Заголовок doc1.md
|
||||
```md
|
||||
---
|
||||
sidebar_position: 1
|
||||
title: Template title 1
|
||||
title: Заголовок документа 1
|
||||
---
|
||||
|
||||
Template text
|
||||
Текст документа
|
||||
```
|
||||
|
||||
в doc2.md соответсвенно будет
|
||||
```md
|
||||
---
|
||||
sidebar_position: 2
|
||||
title: Template title 2
|
||||
---
|
||||
- `sidebar_position`: позиция в боковой панели.
|
||||
- `title`: заголовок документа.
|
||||
|
||||
Template text
|
||||
```
|
||||
Аналогично, для `doc2.md` будет другой `sidebar_position` и `title`.
|
||||
|
||||
`sidebar_position` - [Это..]\
|
||||
`title` - [Это...]
|
||||
При настройке блога и документации учтите указанные параметры для создания структуры и корректного отображения контента.
|
||||
|
||||
### Настройка стилей
|
||||
|
||||
@ -173,10 +311,11 @@ Template text
|
||||
|
||||
```css
|
||||
/* src/css/custom.css */
|
||||
|
||||
:root {
|
||||
--footer-padding: 0.5em;
|
||||
}
|
||||
|
||||
/* For readability concerns, you should choose a lighter palette in dark mode. */
|
||||
[data-theme='light'] {
|
||||
--ifm-color-primary: #7c538bfd;
|
||||
--ifm-color-primary-dark: #21af90;
|
||||
@ -189,6 +328,7 @@ Template text
|
||||
--footer-color: #000;
|
||||
--docusaurus-highlighted-code-line-bg: rgba(0, 0, 0, 0.3);
|
||||
}
|
||||
|
||||
[data-theme='dark'] {
|
||||
--ifm-color-primary: #c4c0c5fd;
|
||||
--ifm-color-primary-dark: #21af90;
|
||||
@ -201,26 +341,34 @@ Template text
|
||||
--footer-color: #ebedf0;
|
||||
--docusaurus-highlighted-code-line-bg: rgba(0, 0, 0, 0.3);
|
||||
}
|
||||
|
||||
.footer {
|
||||
--ifm-footer-background-color: var(--footer-background-color);
|
||||
--ifm-footer-color: var(--footer-color);
|
||||
padding: var(--footer-padding)
|
||||
}
|
||||
|
||||
.header-github-link:hover {
|
||||
opacity: 0.6;
|
||||
}
|
||||
|
||||
.header-github-link::before {
|
||||
content: '';
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
display: flex;
|
||||
}
|
||||
|
||||
[data-theme='light'] .header-github-link {
|
||||
background: url("/img/github.svg") 0 center / 25px 25px no-repeat;
|
||||
}
|
||||
h2 {
|
||||
--ifm-heading-vertical-rhythm-bottom: 0;
|
||||
|
||||
[data-theme='dark'] .header-github-link {
|
||||
background: url("/img/githubL.svg") 0 center / 25px 25px no-repeat;
|
||||
}
|
||||
p a {
|
||||
|
||||
.markdown li a, .markdown p a {
|
||||
text-decoration: underline dotted;
|
||||
}
|
||||
```
|
||||
|
||||
```
|
||||
|
Before Width: | Height: | Size: 196 KiB After Width: | Height: | Size: 175 KiB |
@ -4,7 +4,7 @@ sidebar_position: 1
|
||||
|
||||
# Мои заметки
|
||||
|
||||
Мои заметки с Obsidian в формате документации по категориям
|
||||
Мои заметки в формате документации по категориям
|
||||
|
||||
Здесь можно найти:
|
||||
|
||||
@ -15,13 +15,3 @@ sidebar_position: 1
|
||||
- ❓ Вопросы и ответы
|
||||
- 📂 И прочие записи которые я зачем-то решил сохранить
|
||||
|
||||
<br></br>
|
||||
<br></br>
|
||||
|
||||
:::tip
|
||||
|
||||
Некоторые категории не стал выносить в основное меню и находяться в **[Misc](/docs/category/misc)**
|
||||
|
||||
Еще проще, что-то найти, воспользоваться кнопкой поиска
|
||||
|
||||
:::
|
||||
|
@ -8,15 +8,14 @@ const darkTheme = themes.dracula;
|
||||
|
||||
/** @type {import('@docusaurus/types').Config} */
|
||||
const config = {
|
||||
title: 'SantaSpeen',
|
||||
title: process.env.SITE_TITLE,
|
||||
tagline: 'Personal Blog',
|
||||
favicon: 'img/favicon.ico',
|
||||
url: 'https://santaspeen.ru',
|
||||
url: process.env.SITE_URL,
|
||||
baseUrl: '/',
|
||||
organizationName: 'santaspeen',
|
||||
projectName: 'santaspeen.ru',
|
||||
organizationName: process.env.SITE_ORANIZATION_NAME,
|
||||
projectName: process.env.SITE_PROJECT_NAME,
|
||||
trailingSlash: false,
|
||||
deploymentBranch: 'gh-pages',
|
||||
onBrokenLinks: 'throw',
|
||||
onBrokenMarkdownLinks: 'warn',
|
||||
i18n: {
|
||||
@ -51,10 +50,10 @@ const config = {
|
||||
},
|
||||
},
|
||||
},
|
||||
// gtag: {
|
||||
// trackingID: process.env.GOOGLE_ANALYTICS_TAG_ID,
|
||||
// anonymizeIP: true,
|
||||
// },
|
||||
gtag: {
|
||||
trackingID: process.env.COUNTER_GOOGLE,
|
||||
anonymizeIP: true,
|
||||
},
|
||||
theme: {
|
||||
customCss: require.resolve('./src/css/custom.css'),
|
||||
},
|
||||
@ -92,12 +91,6 @@ const config = {
|
||||
style: 'dark',
|
||||
copyright: `Copyright © ${new Date().getFullYear()} SantaSpeen`,
|
||||
},
|
||||
// algolia: {
|
||||
// appId: process.env.ALGOLIA_APP_ID,
|
||||
// apiKey: process.env.ALGOLIA_API_KEY,
|
||||
// indexName: process.env.ALGOLIA_INDEX_NAME,
|
||||
// searchParameters: {},
|
||||
// },
|
||||
prism: {
|
||||
additionalLanguages: ['bash', 'diff', 'json'],
|
||||
darkTheme: darkTheme,
|
||||
@ -108,6 +101,12 @@ const config = {
|
||||
disableSwitch: false,
|
||||
respectPrefersColorScheme: false,
|
||||
},
|
||||
algolia: {
|
||||
appId: process.env.ALGOLIA_APP_ID,
|
||||
apiKey: process.env.ALGOLIA_API_KEY,
|
||||
indexName: process.env.ALGOLIA_INDEX_NAME,
|
||||
searchParameters: {},
|
||||
},
|
||||
}),
|
||||
plugins: [
|
||||
[
|
||||
@ -115,6 +114,9 @@ const config = {
|
||||
/** @type {import('docusaurus-plugin-sass').Options} */
|
||||
{}
|
||||
],
|
||||
['docusaurus-plugin-yandex-metrica', {
|
||||
counterID: process.env.COUNTER_YANDEX,
|
||||
}],
|
||||
]
|
||||
};
|
||||
|
||||
|
17076
package-lock.json
generated
@ -27,6 +27,7 @@
|
||||
"@svgr/webpack": "8.0.1",
|
||||
"clsx": "^1.2.1",
|
||||
"docusaurus-plugin-sass": "^0.2.3",
|
||||
"docusaurus-plugin-yandex-metrica": "^1.1.0",
|
||||
"file-loader": "6.2.0",
|
||||
"prism-react-renderer": "^2.1.0",
|
||||
"react": "^18.2.0",
|
||||
|
@ -63,12 +63,16 @@
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
display: flex;
|
||||
}
|
||||
|
||||
[data-theme='light'] .header-github-link {
|
||||
background: url("/img/github.svg") 0 center / 25px 25px no-repeat;
|
||||
}
|
||||
|
||||
p a {
|
||||
--ifm-heading-vertical-rhythm-bottom: 0;
|
||||
text-decoration: underline dotted;
|
||||
font-size: '10px';
|
||||
margin: "0"
|
||||
[data-theme='dark'] .header-github-link {
|
||||
background: url("/img/githubL.svg") 0 center / 25px 25px no-repeat;
|
||||
}
|
||||
|
||||
.markdown li a, .markdown p a {
|
||||
text-decoration: underline dotted;
|
||||
}
|
@ -5,19 +5,26 @@ import Giscus from "@giscus/react";
|
||||
|
||||
export default function BlogPostItemWrapper(props) {
|
||||
const { isBlogPostPage } = useBlogPost();
|
||||
|
||||
if (!isBlogPostPage) {
|
||||
return <BlogPostItem {...props} />;
|
||||
}
|
||||
|
||||
const repo = "SantaSpeen/santaspeen.ru-blog"
|
||||
const repoId = "R_kgDOK6Fd_Q"
|
||||
const category = "General"
|
||||
const categoryId = "DIC_kwDOK6Fd_c4Cbwpe"
|
||||
|
||||
return (
|
||||
<>
|
||||
<BlogPostItem {...props} />
|
||||
{(
|
||||
<div className="docusaurus-blog-comments">
|
||||
<Giscus
|
||||
repo="SantaSpeen/santaspeen.ru-blog"
|
||||
repoId="R_kgDOK6Fd_Q"
|
||||
category="General"
|
||||
categoryId="DIC_kwDOK6Fd_c4Cbwpe"
|
||||
repo={repo}
|
||||
repoId={repoId}
|
||||
category={category}
|
||||
categoryId={categoryId}
|
||||
mapping="pathname"
|
||||
reactionsEnabled="1"
|
||||
emitMetadata="0"
|
||||
|
@ -3,5 +3,7 @@
|
||||
<svg width="800px" height="800px" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g id="SVGRepo_bgCarrier" stroke-width="0"/>
|
||||
<g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<g id="SVGRepo_iconCarrier"> <path fill-rule="evenodd" clip-rule="evenodd" d="M7.49936 0.850006C3.82767 0.850006 0.849976 3.8273 0.849976 7.50023C0.849976 10.4379 2.75523 12.9306 5.39775 13.8104C5.73047 13.8712 5.85171 13.6658 5.85171 13.4895C5.85171 13.3315 5.846 12.9135 5.84273 12.3587C3.99301 12.7604 3.60273 11.4671 3.60273 11.4671C3.30022 10.6988 2.86423 10.4942 2.86423 10.4942C2.26044 10.0819 2.90995 10.0901 2.90995 10.0901C3.57742 10.137 3.9285 10.7755 3.9285 10.7755C4.52167 11.7916 5.48512 11.4981 5.86396 11.3279C5.92438 10.8984 6.09625 10.6053 6.28608 10.4391C4.80948 10.2709 3.25695 9.70063 3.25695 7.15241C3.25695 6.42615 3.51618 5.83298 3.94157 5.368C3.87299 5.1998 3.64478 4.52375 4.00689 3.60807C4.00689 3.60807 4.56494 3.42926 5.83538 4.28941C6.36568 4.14204 6.93477 4.06856 7.50018 4.0657C8.06518 4.06856 8.63386 4.14204 9.16498 4.28941C10.4346 3.42926 10.9918 3.60807 10.9918 3.60807C11.3548 4.52375 11.1266 5.1998 11.0584 5.368C11.4846 5.83298 11.7418 6.42615 11.7418 7.15241C11.7418 9.70716 10.1868 10.2693 8.70571 10.4338C8.94412 10.6392 9.15681 11.045 9.15681 11.6655C9.15681 12.5542 9.14865 13.2715 9.14865 13.4895C9.14865 13.6675 9.26867 13.8745 9.60588 13.8095C12.2464 12.9282 14.15 10.4375 14.15 7.50023C14.15 3.8273 11.1723 0.850006 7.49936 0.850006Z" fill="#ffffff"/> </g>
|
||||
<g id="SVGRepo_iconCarrier">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M7.49936 0.850006C3.82767 0.850006 0.849976 3.8273 0.849976 7.50023C0.849976 10.4379 2.75523 12.9306 5.39775 13.8104C5.73047 13.8712 5.85171 13.6658 5.85171 13.4895C5.85171 13.3315 5.846 12.9135 5.84273 12.3587C3.99301 12.7604 3.60273 11.4671 3.60273 11.4671C3.30022 10.6988 2.86423 10.4942 2.86423 10.4942C2.26044 10.0819 2.90995 10.0901 2.90995 10.0901C3.57742 10.137 3.9285 10.7755 3.9285 10.7755C4.52167 11.7916 5.48512 11.4981 5.86396 11.3279C5.92438 10.8984 6.09625 10.6053 6.28608 10.4391C4.80948 10.2709 3.25695 9.70063 3.25695 7.15241C3.25695 6.42615 3.51618 5.83298 3.94157 5.368C3.87299 5.1998 3.64478 4.52375 4.00689 3.60807C4.00689 3.60807 4.56494 3.42926 5.83538 4.28941C6.36568 4.14204 6.93477 4.06856 7.50018 4.0657C8.06518 4.06856 8.63386 4.14204 9.16498 4.28941C10.4346 3.42926 10.9918 3.60807 10.9918 3.60807C11.3548 4.52375 11.1266 5.1998 11.0584 5.368C11.4846 5.83298 11.7418 6.42615 11.7418 7.15241C11.7418 9.70716 10.1868 10.2693 8.70571 10.4338C8.94412 10.6392 9.15681 11.045 9.15681 11.6655C9.15681 12.5542 9.14865 13.2715 9.14865 13.4895C9.14865 13.6675 9.26867 13.8745 9.60588 13.8095C12.2464 12.9282 14.15 10.4375 14.15 7.50023C14.15 3.8273 11.1723 0.850006 7.49936 0.850006Z" fill="#1c1e21"/>
|
||||
</g>
|
||||
</svg>
|
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 1.7 KiB |
9
static/img/githubL.svg
Normal file
@ -0,0 +1,9 @@
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Transformed by: SVG Repo Mixer Tools -->
|
||||
<svg width="800px" height="800px" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g id="SVGRepo_bgCarrier" stroke-width="0"/>
|
||||
<g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<g id="SVGRepo_iconCarrier">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M7.49936 0.850006C3.82767 0.850006 0.849976 3.8273 0.849976 7.50023C0.849976 10.4379 2.75523 12.9306 5.39775 13.8104C5.73047 13.8712 5.85171 13.6658 5.85171 13.4895C5.85171 13.3315 5.846 12.9135 5.84273 12.3587C3.99301 12.7604 3.60273 11.4671 3.60273 11.4671C3.30022 10.6988 2.86423 10.4942 2.86423 10.4942C2.26044 10.0819 2.90995 10.0901 2.90995 10.0901C3.57742 10.137 3.9285 10.7755 3.9285 10.7755C4.52167 11.7916 5.48512 11.4981 5.86396 11.3279C5.92438 10.8984 6.09625 10.6053 6.28608 10.4391C4.80948 10.2709 3.25695 9.70063 3.25695 7.15241C3.25695 6.42615 3.51618 5.83298 3.94157 5.368C3.87299 5.1998 3.64478 4.52375 4.00689 3.60807C4.00689 3.60807 4.56494 3.42926 5.83538 4.28941C6.36568 4.14204 6.93477 4.06856 7.50018 4.0657C8.06518 4.06856 8.63386 4.14204 9.16498 4.28941C10.4346 3.42926 10.9918 3.60807 10.9918 3.60807C11.3548 4.52375 11.1266 5.1998 11.0584 5.368C11.4846 5.83298 11.7418 6.42615 11.7418 7.15241C11.7418 9.70716 10.1868 10.2693 8.70571 10.4338C8.94412 10.6392 9.15681 11.045 9.15681 11.6655C9.15681 12.5542 9.14865 13.2715 9.14865 13.4895C9.14865 13.6675 9.26867 13.8745 9.60588 13.8095C12.2464 12.9282 14.15 10.4375 14.15 7.50023C14.15 3.8273 11.1723 0.850006 7.49936 0.850006Z" fill="#fff"/>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 1.7 KiB |