A simple notes app written in C++17.
Developed within the subject of C++ Programming Language at the AGH University of Science and Technology.
- New note can be created by clicking add ("+") button, by clicking File => New note or via shortcut
Ctrl + N
; - You can delete your note by clicking remove ("-") button near the note you want to remove;
- In order to synchronize your local notes with remote server, you need:
- Click File => Sign in / up;
- Enter your data (email and password) and click Sign in if you have already created an account or Sign up if you haven't;
- Now you can sync your notes: click File => Synchronize or sync button in the toolbar;
- Now all your notes are synchronized with the server;
- This app can be used offline (without need to log in), but in that case you won't be able to synchronize your notes.
- Firebase (tested with 11.2.0)
- Qt 5+ (tested with 5.15.9 and 6.5.1)
- QtAwesome (included as submodule)
Note Clone with submodules using the following command:
git clone --recurse-submodules https://github.com/congard/simple-notes.git
- In order to build this project you need to download & unpack Firebase C++ SDK;
- You need to create your own instance of
Firebase Realtime Database and generate your own key:
- Add Android app
- Download
google-services.json
and place it in SimpleNotes working directory
- On Linux most likely it will be necessary to install some additional libraries like
libsecret-devel
(Fedora)
Qt is used for UI.
Supported versions: Qt5, Qt6.
How to install Qt (Qt6) you can find here
(it is enough to install just Desktop gcc 64-bit
).
CMake options:
Flag | Description | Required |
---|---|---|
FIREBASE_SDK |
path to unpacked Firebase C++ SDK | Yes |
CMAKE_PREFIX_PATH |
path to Qt, e.g. $HOME/Qt/6.5.1/gcc_64/ |
No, if Qt is installed system wide |
mkdir build
cmake -DCMAKE_BUILD_TYPE=Release -DFIREBASE_SDK="$HOME/firebase_cpp_sdk/" -DCMAKE_PREFIX_PATH="$HOME/Qt/6.5.1/gcc_64/" -Bbuild -G"Unix Makefiles"
cmake --build build --target simple_notes -- -j 4
Note Do not forget to set valid
FIREBASE_SDK
andCMAKE_PREFIX_PATH
(if needed) values.
The resulting executable: build/simple_notes
Note Do not forget to set correct working directory, i.e. directory in which
google-services.json
is located. See: Configuring > Firebase section for details.
Warning This project was tested on Linux (Fedora 38) only.
- Qt developers & community
- Firebase developers
- Rick Blommers for QtAwesome
- Google for Google Keep icon :)