Skip to content

Latest commit

 

History

History
120 lines (79 loc) · 3.91 KB

README.md

File metadata and controls

120 lines (79 loc) · 3.91 KB

Lunaria

Lunaria Logo

Welcome to Lunaria

English | 日本語 | Українська

Lunaria is an open-source chat application built around the QUIC protocol, aiming for secure and efficient communication.

Status

🚧 Active Development 🚧

This project has been in active development for about 2 months by a solo developer. Many core features are being implemented, and a pre-alpha release is targeted for the end of August. Your interest and feedback are appreciated as the application progresses.

About

FAQ

Lunaria is a chat application that prioritizes security and efficiency. It's being developed to leverage the QUIC protocol and provide a communication platform that can potentially be self-hosted and customized.

Features in Development

  • Security enhancements using QUIC protocol
  • Self-hostable server
  • Peer-to-peer communication within VPN networks
  • Client customization using Lua scripts
  • CLI/chatbot functionality powered by Lua

Technologies Being Implemented

This project is actively using or integrating the following technologies:

  • Programming Languages
    • C++
    • C
    • Shell
    • Lua
  • Libraries/Frameworks
    • Qt - for GUI development
    • pqxx - PostgreSQL C++ Library
    • cassandra - C++ driver for ScyllaDB
    • Protobuf - for data serialization
    • NetBird - VPN solution
    • MsQuic - Cross-platform QUIC protocol implementation
    • Abseil - C++ Common Library by Google
    • OpenSSL - for cryptographic operations
  • Databases
    • PostgreSQL (Support for postgreSQL will be discontinued)
    • ScyllaDB (Full transition to ScyllaDb)
  • Tools
    • g++ - Compiler
    • CMake - Build system
    • Git - Version control

Target Platforms

Lunaria is being developed to support:

  • Linux (x11 | Wayland)
  • Windows

Planned Language Support

Localization is planned for:

  • Ukrainian
  • Japanese
  • English

Building from Source

As the project is approaching its first pre-alpha release, build instructions are being finalized. This README will be updated with detailed build instructions when the pre-alpha version is released at the end of August.

GUI Preview

Here are preview images of the current graphical user interface (GUI):

Server GUI Preview

Sign In Preview         Sign Up Preview

Chat Interface Preview

Settings Preview

User Profile Preview

Contributing

As a solo project in active development, Lunaria is not currently open for general contributions. However, your interest is greatly appreciated.

Future Plans for Collaboration

If there's significant interest in contributing to the project, I'm considering a complete rewrite with the following goals:

  1. Implementing coding conventions and standardization
  2. Establishing a structured development workflow
  3. Creating a more collaborative-friendly architecture

This rewrite would aim to make Lunaria more accessible for multiple developers to work on simultaneously.

If you're passionate about the project and would like to discuss potential involvement in its future development, please feel free to reach out directly:

Email

To stay updated on the project's progress and any announcements regarding collaboration opportunities, please star and watch this repository.

Contact

For any questions, feedback, or interest in Lunaria, please feel free to reach out:

Email

Thank you for your interest in Lunaria! Your support and feedback are invaluable to this project's development.