Персональный форум — небольшое клиент-серверное веб-приложение для общения. Это что-то среднее между форумом и чатом, позволяющее создавать несколько комнат и запускать несколько тем в каждой комнате. Он пытается подчеркнуть конфиденциальность пользователей и уменьшить объем трафика между сервером и его клиентами.
Посетите демо-страницу.
Этот проект размещен на GitHub.
Это веб-приложение разделено на две части: серверную часть и интерфейс. Сервер написан на Rust и взаимодействует с базой данных PostgreSQL. Интерфейс написан на простом JavaScript, HTML и CSS. Также используются шаблоны Tera.
Серверный сервер личного форума представляет собой программу Rust, созданную с использованием платформы Rocket. Для локального запуска сервера вам понадобится компилятор Rust (рекомендуется ночная версия) и Cargo. Вам также необходимо создать базу данных PostgreSQL и передать ее URL-адрес в качестве переменной среды при запуске сервера.
# Create a new PostgreSQL user and database.
sudo - u postgres psql
create database YOUR_DB ;
# It's easier if you choose the username you are logged in as.
create user YOUR_USER with encrypted password ' YOUR_PASSWORD ' ;
grant all privileges on database YOUR_DB to YOUR_USER;
# Use the nightly version of the Rust compiler.
rustup override set nightly
# Start the server.
# Your database URL probably looks like: postgres://YOUR_USER:YOUR_PASSWORD@localhost/YOUR_DB
ROCKET_DATABASES={db={url= " YOUR_DB_URL " }} cargo run
Примечание . Вы можете запустить сервер с флагом
--release
чтобы активировать некоторые оптимизации. НЕ следует использовать этот флаг при работе над проектом, поскольку такие функции, как кэширование статических файлов, могут затруднить разработку.
Вы можете упростить работу сервера, включив URL-адрес базы данных в файл Rocket.toml
, например:
[global.databases]
db = { url = "YOUR_DB_URL" }
Это позволяет вам запускать сервер только с помощью cargo run
.
Это руководство поможет вам развернуть веб-приложение на бесплатном экземпляре Fly.io, как показано на демонстрационной странице.
Вы можете внести свой вклад в этот проект на GitHub с помощью запросов на включение.
Прежде чем сделать это, пожалуйста, прочтите руководство по вкладам.
Персональный форум был построен с использованием многих других проектов с открытым исходным кодом. Если вы хотите внести свой вклад, ознакомление с ними может облегчить вашу работу. Некоторые из них: