A desktop chat application built with Qt Widgets and C++. The app includes user authentication (login/sign-up with SQLite), real-time messaging over TCP, and basic file attachment transfer.
- User sign-up and login flow
- SQLite-backed user storage
- Local TCP server/client chat communication
- Public and private message sending
- File attachment send/receive support
- Basic localization setup (
CN_Proj_en_US.ts)
main.cpp: Application entry point and translator loadinglogin.*: Login window and credential validationsignup.*: Sign-up window and account creationdatabase.*: SQLite setup and user CRUD helpersmainwindow.*: Chat UI, socket handling, file transfer logicResources/: Qt resource filesCN_Proj.pro: qmake project file
- Qt 6 (Widgets, Network, SQL modules)
- C++ compiler supported by your Qt kit
- Qt Creator (recommended)
- Open
CN_Proj.proin Qt Creator. - Select a Qt 6 desktop kit.
- Build the project.
- Run the app.
qmake CN_Proj.pro
make
./CN_ProjNote: On some systems, you may need to use qmake6 instead of qmake.
- The app stores credentials in a SQLite database file under your app data location (
QStandardPaths::AppDataLocation). - Default server/client communication currently uses TCP port
8080.
This repository includes a .gitignore configured to exclude:
- Qt build folders and generated files
- IDE user files
- Local binaries and logs
- Runtime SQLite database files
This keeps pushes lightweight and avoids uploading machine-specific build artifacts.