En

CRYSTAL доступна для тестирования

24.10.2024

CRYSTAL

CRYSTAL — это социальная сеть с открытым исходным кодом, находящаяся в стадии разработки.

Основные возможности, которые есть сейчас:

  • 1. Регистрация/редактирование/удаление пользователя.
  • 2. Аватар, баннер, описание и уникальный Id пользователя.
  • 3. Добавление/редактирование/удаление постов.
  • 4. Сжатие загружаемых изображений в браузере, с помощью — npmjs.com/package/browser-image-compression и проверка размера загружаемых изображений на сервере.
  • 5. Система лайков и хештегов.
  • 6. Частичный перевод на английский, с использованием react.i18next.com.
  • 7. Тёмная тема с использованием Redux (покрашено не полностью).
  • 8. Валидация, частично с использованием Yup npmjs.com/package/yup, иногда кастомная.
  • 9. Регистрация/аутентификация/авторизация и общая работа с запросами, построена на TanStack Query tanstack.com/query/latest + Redux.
  • 10. Авторизация через Cookie/JWT (HTTPonly, Secure, SameSite: Strict).
  • 11. reCAPTCHA v3 при регистрации.
  • 12. Infinite scroll постов.

В дальнейшем планируется добавить: личные сообщения с шифрованием, комментарии, фото/видео альбомы и т.д.

Цель проекта – создать безопасную, быструю и удобную социальную сеть с применением лучших технологий.
В настоящее время, проект в стеке MERN, развернут на VPC.

Проект будет состоять из стадий. Первая стадия в стеке MERN, будет с открытым исходным кодом, и с подробными инструкциями, как развернуть проект на VPC с Debian, настроить и запустить его в полностью рабочем виде с настройкой Nginx, настройками безопасности, автопродлением SSL-сертификата, работой через GitHub и т.д. Через некоторое время, код будет опубликован на GitHub, а инструкции в разделе CRYSTAL. Вторая стадия и последующие, будут или с открытым или частично открытым исходным кодом, также планируется переход на ScyllaDB, Next.js и TypeScript.

Проект тестируется в

BrowserStack

Поделиться

Копировать

BTC (Network BTC) - 1C2EWWeEXVhg93hJA9KovpkSd3Rn3BkcYm

Ethereum (Network ERC20) - 0x05037ecbd8bcd15631d780c95c3799861182e6b8

Этот сайт использует файлы cookies. Нажимая кнопку 'Принять' или продолжая пользоваться сайтом, вы соглашаетесь на использование файлов cookies.