Code Monkey home page Code Monkey logo

javafx-voice-messenger's Introduction

Vacoom Voice Messenger

Vacoom Voice Messenger (используя JavaFx)

JDK version Database build

Vacoom Voice Messenger - голосовой мессенджер с криптографической защитой. Мессенджер содержит клиентскую и серверную часть. Мессенджер позволяет:

  • совершать криптографически защищенный сеанс аудиосвязи между двумя пользователями
  • передавать сообщения по защищенному каналу

В данном проекте реализован собственный движок для смайликов на JavaFx.

Причины создания

Данный проект является попыткой создания собственного голосового мессенджера с криптографической защитой, ведь мы далеко не всегда может быть уверены в том, что нас не прослушивают.

Скриношты (на текущий момент времени, проект еще в разработке)

Vacoom Voice Messenger Vacoom Voice Messenger Vacoom Voice Messenger Vacoom Voice Messenger Vacoom Voice Messenger Vacoom Voice Messenger Vacoom Voice Messenger Vacoom Voice Messenger

Участие в разработке

Перед разработкой необходимо создать файл config.properties в директории src/main/resources/conf в gradle-модуле server со следущющими полями:

  • db.login - имя пользователя БД
  • db.password - пароль пользователя БД
  • db.url - url базы данных pgsql, включая jdbc:postgresql://

Серверная часть проекта использует сервис для хранения изображений (https://cloudinary.com/), поэтому в файле config.properties также обязательно указываются следующие поля, название которых соответствует разделу Account Details на сайте:

  • cloud.name - Cloud name
  • api.key - API Key
  • api.secret - API Secret

Пример файла config.properties :

db.login = qnrdhkiobgd
db.password = qwca75e4e677y9a43df89e483cbe52fcb8cbf5bchhf9
db.url= jdbc:postgresql://ecw2-7771-4.eu-west.compute.amazonaws.com/88fjdhgshgnds
cloud.name= vacoommem
api.key= 777375577712777
api.secret= McELkeGtiA-hghdfhdfh

Все зависимости устанавливаются при помощи Gradle. Достаточно выполнить следующую команду:

gradle --refresh-dependencies clean build

Если Вы используете IDE, то при открытии проекта это выполнится автоматически.

Перед внесением изменений делайте pull request. В случае больших изменений открывайте issue для обсуждения того, что Вы хотели бы изменить.

Сборка проекта в JAR

Чтобы собрать клиентскую часть в jar необходимо выполнить следующую команду:

gradle jfxJar

Чтобы собрать серверную часть в jar необходимо выполнить следующую команду:

gradle :server:jar

Лицензия

Этот репозиторий находится под лицензией MIT. Подробную информаци вы можете найти здесь или на официальном сайте.

javafx-voice-messenger's People

Contributors

majorkik avatar testerreality avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

w1kelxd velykov

javafx-voice-messenger's Issues

Обновить .gitignore

Привет, @TesterReality

Необходимо обновить .gitignore, чтобы папка .idea и out, а также файлы сборки, чтобы тоже не добавлялись при каждом комите.

Сервис Gitignore.io должен в этом помочь.

В репозиторий находятся .jar файлы библиотек

Привет, @TesterReality

В репозитории не должны хранится файлы библиотек, они должны имплементироваться через системы сборки.

Это позволит уменьшит вес комита, избавить репозиторий от лишних файлов и даст возможность изменять версии зависимостей (библиотек) динамически, а не в ручную.

Commentaries and logging

Hi, @TesterReality!

I'm really curious about your project. I'm solving same issues in my project related to voice messaging. But I've encountered a lot of issues while watching your code.

In this issue I've decided to focus on logging and commentaries. First of all, commentaries in the code on foreign language. I think it should be Russian. I've tried to translate it but still I can't understand them. Can you explain code in ThreadPoolServer class, have a lot of issues with it.

Also I can't figure out what's going on in logging. As I understood, you use sout everywhere in the code. This is also a trouble.

Отсутствие системы сборки (Gradle или Maven)

В проекте отсутствует система сборки, что в дальнейшем усложнит поддержку проекта, подключение новых зависимостей, а также его настройку.

Решение
Добавить в проект одну из систем сборок (Maven, Gradle или др.)

Использование логгеров, вместо System.out.println

Привет, @TesterReality

Для логов лучше вместо System.out.println использовать библиотеку, например эту xLog.

Хотя в Java есть стандартные способы для ведения логов, но они требуют написания бойлерпринт кода в каждом классе, где используешь и менее удобные. Но во всяком случае лучше, чем System.out.println.

Файлы сцен (.fxml) должны находится в папке resource

Привет, @TesterReality

В проекте .fxml находятся в пакете sample/fxml, однако файлы fxml являются файлами ресурсов и должны находится в пакете resource/fxml.

Это упростит навигацию по проекту и их местоположение будет более очевидным и будет соответствовать типу файлов.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.