FinTrack is an advanced database-driven accounting system designed to streamline financial management processes for businesses of all sizes. The system provides a robust platform for managing financial transactions, generating accurate reports, and ensuring compliance with accounting standards. Built using a relational database, FinTrack enables secure storage, retrieval, and manipulation of financial data, offering users a reliable tool to monitor and manage their accounts.
FinTrack is an ideal solution for businesses seeking to enhance their accounting processes, improve financial oversight, and ensure the accuracy of their financial data.
│ .DS_Store
│ FEATURES.md
│ LICENSE
│ README.md
│
├───docs
├───images
├───screens
└───src
├───database
└───interface
└───__pycache__
- Python 3.x
- Required Python packages (specified in
requirements.txt
) - QT Designer
- ODBC Driver 17 for SQL Server for database connectivity
- Microsoft SQL Server Management Studio (SSMS)
-
Clone the repository:
git clone https://github.com/samiyaalizaidi/FinTrack.git cd FinTrack
-
Install dependencies:
pip install -r requirements.txt
-
Set up the database in SSMS:
- Install SQL Server Management Studio (SSMS)
- Download and install from the official Microsoft Website
- Open SQL Server Management Studio (SSMS).
- Create the database.
- Run
src/database/script.sql
in themaster
DB to create and populate the database. - The database can also be created manually by right-clicking on
Databases
in the Object Explorer and selectingNew Database
- Run
- Optional: If the DB was created manually, the dummy data can be populated by running the
src/database/data.sql
file in your newly created database. - Ensure the database is correctly configured and available for connection.
- Install SQL Server Management Studio (SSMS)
-
Update the database connection string in
src/interface/dashboard.py
:Replace the following code with your connection details:
server = 'DESKTOP-6M55HJA\\SQLSERVER1' # Update with your server name database = 'FinTrack' # Name of the FinTrack database use_windows_authentication = True # Set to True if using Windows Authentication username = 'your_username' # Specify a username if not using Windows Authentication password = 'your_password' # Specify a password if not using Windows Authentication # Create the connection string if use_windows_authentication: connection_string = f'DRIVER={{ODBC Driver 17 for SQL Server}};SERVER={server};DATABASE={database};Trusted_Connection=yes;' else: connection_string = f'DRIVER={{ODBC Driver 17 for SQL Server}};SERVER={server};DATABASE={database};UID={username};PWD={password}'
- Server: Replace
DESKTOP-6M55HJA\\SQLSERVER1
with your server instance name. - Database: Replace
FinTrack
with your database name if different. - Authentication:
- For Windows Authentication: Set
use_windows_authentication = True
. - For SQL Server Authentication: Set
use_windows_authentication = False
and provide your username and password.
- For Windows Authentication: Set
- Server: Replace
-
Run the application
python src/interface/dashboard.py
FinTrack is composed of multiple modules, each designed to address a specific aspect of accounting management. A detailed description of all features can be found in FEATURES.md
.
Key highlights include:
- Intuitive Dashboard: A central hub for accessing all features.
- Financial Transactions: Track income, expenses, and other financial activities.
- Customizable Reports: Generate detailed financial statements for any date range.
- Relational Database Integration: Secure and efficient storage for your financial data.
All UI screens for the project are designed using .UI
files, located in the /screens
directory. These are integrated into the application through PyQt6
, ensuring a seamless and visually appealing interface.
This project is developed and maintained by: