Alternative privacy frontend for DeviantArt. https://ls.404.mn/skunkyart
Go to file
2024-07-30 01:06:40 +03:00
app Подготовка к релизу v1.3.1 2024-07-30 01:06:40 +03:00
css Подготовка к релизу v1.3.1 2024-07-30 01:06:40 +03:00
html Подготовка к релизу v1.3.1 2024-07-30 01:06:40 +03:00
misc Подготовка к релизу v1.3.1 2024-07-30 01:06:40 +03:00
services Подготовка к релизу v1.3.1 2024-07-30 01:06:40 +03:00
.gitignore панель навигации, ответы и ежедневные арты 2024-06-14 20:04:23 +03:00
config.example.json Подготовка к релизу v1.3.1 2024-07-30 01:06:40 +03:00
go.mod Подготовка к релизу v1.3.1 2024-07-30 01:06:40 +03:00
go.sum Забыл кое-что 2024-07-13 21:45:04 +03:00
instances.json Подготовка к релизу v1.3.1 2024-07-30 01:06:40 +03:00
LICENSE v1.3 2024-07-13 21:32:04 +03:00
main.go Реки и копирование темплейтов в озу 2024-07-06 20:06:04 +03:00
README.md Подготовка к релизу v1.3.1 2024-07-30 01:06:40 +03:00
TODO.md Подготовка к релизу v1.3.1 2024-07-30 01:06:40 +03:00

SkunkyArt

Matrix room

Instances

Instance Yggdrasil I2P Tor NSFW Proxifying Country
skunky.ebloid.ru Yes No No No No Russia
clovius.club No No No Yes Yes Sweden
bloat.cat No No No Yes Yes Romania
frontendfriendly.xyz No No No Yes Yes Finland
lumaeris.com No No No Yes Yes US

EN 🇺🇸

Description

SkunkyArt 🦨 -- alternative frontend to DeviantArt, which will work without problems even on quite old hardware, due to the lack of JavaScript.

Config

The sample config is in the config.example.json file. To specify your own path to the config, use the CLI argument -c or --config.

  • listen -- the address and port on which SkunkyArt will listen
  • base-path -- the path to the instance. Example: "base-path":"/art/" -> https://skunky.ebloid.ru/art/
  • cache -- caching system; default is off.
    • path -- the path to the cache
    • lifetime -- the lifetime of the file in the cache. Units: i, h, d, w, m, y. I -- minute, all other units I think are self-explanatory.
    • max-size -- maximum file size in megabytes.
  • dirs-to-memory -- this setting determines which directories will be copied to RAM when SkunkyArt is started. Mandatory
  • download-proxy -- proxy address for downloading files.

Examples of reverse proxies

Nginx:

server {
    listen 443 ssl;
    server_name skunky.example.com;
    
    location ((BASE URL)) { # if you have a separate subdomain for the frontend, insert '/' instead of '((BASE URL)))'.
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header Host $host;
        proxy_http_version 1.1;
        proxy_pass http://((IP)):((PORT));
    }
}

Pretty much business as usual, except for the X-Forwarded-Proto header setting.

How do I add my instance to the list?

To do this, you must either make a PR by adding your instance to the instances.json and README.md files, or create an Issue, or report it to the room in Matrix. I don't think it needs any description. However, be warned, this list has a couple rules:

  1. the Instance must not use Cloudflare.
  2. If your instance has modified source code, you need to publish it to any free platform. For example, Github and Gitlab are not.

Acknowledgements

  • Лис⚛ -- helped me understand Go and gave me a lot of useful advice on this language.

RU 🇷🇺

Описание

SkunkyArt 🦨 -- альтернативный фронтенд к DeviantArt, который будет работать без проблем даже на довольно старом оборудовании, за счёт отсутствия JavaScript.

Конфиг

Пример конфига находится в файле config.example.json. Чтобы указать свой путь до конфига, используйте CLI-аргумент -c или --config.

  • listen -- адрес и порт, на котором будет слушать SkunkyArt
  • base-path -- путь к инстансу. Пример: "base-path": "/art/" -> https://skunky.ebloid.ru/art/
  • cache -- система кеширования; по умолчанию - выкл.
    • path -- путь до кеша
    • lifetime -- время жизни файла в кеше. Единицы измерения: i, h, d, w, m, y. I -- минута, всё остальные единицы измерения, я считаю понятными и без объяснения.
    • max-size -- максимальный размер файла в мегабайтах
  • dirs-to-memory -- данная настройка определяет какие каталоги будут скопированы в ОЗУ при запуске SkunkyArt. Обязательна
  • download-proxy -- адрес прокси для загрузки файлов

Примеры reverse-прокси

Nginx:

server {
    listen 443 ssl;
    server_name skunky.example.com;
    
    location ((BASE URL)) { # если у вас отдельный поддомен для фронтенда, вместо '((BASE URL))' вставляйте '/'
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header Host $host;
        proxy_http_version 1.1;
        proxy_pass http://((IP)):((PORT));
    }
}

В целом, всё как обычно, за исключением настройки заголовка X-Forwarded-Proto.

Как добавить свой инстанс в список?

Чтобы это сделать, вы должны либо сделать PR, добавив в файлы instances.json и README.md свой инстанс, либо создать Issue, или сообщить о нём в комнате в Matrix. Думаю, он не нуждается в описании. Однако учтите, у этого списка есть пара правил:

  1. Инстанс не должен использовать Cloudflare.
  2. Если ваш инстанс имеет модифицированный исходный код, то вам нужно опубликовать его на любую свободную площадку. Например, Github и Gitlab таковыми не являются.

Благодарности

  • Лис⚛ -- помог разобраться в Go и много чего полезного посоветовал по этому языку.