No description
| src | ||
| .gitignore | ||
| main.py | ||
| README.md | ||
| requirements.txt | ||
| token.json | ||
Business Admin Tool
This is a Python application designed to assist with business administration tasks, including customer data management, time tracking, and Google Sheets integration. It features a graphical user interface (GUI) for easy interaction.
Features
- Customer Data Management: Manage customer information efficiently.
- Time Tracking: Track time spent on various tasks.
- Google Sheets Integration: Interact with Google Sheets for data storage and retrieval.
- Invoicing: Generate and manage invoices.
- Travel Expenses: Track and manage travel expenses.
- Configurable Settings: Customize application settings.
- Theming: Support for different UI themes.
Setup
To set up and run this project, follow these steps:
-
Clone the repository:
git clone https://github.com/your-repo/business-admin-tool.git cd business-admin-tool -
Create a virtual environment (recommended):
python -m venv .venv source .venv/bin/activate # On Windows, use `.venv\Scripts\activate` -
Install dependencies:
pip install -r requirements.txt -
Google Sheets API Setup:
- Enable the Google Sheets API and Google Drive API in the Google Cloud Console.
- Create a new OAuth 2.0 Client ID credentials.
- Download the
credentials.jsonfile and rename it totoken.json(or configure the path insrc/config.py). - The application will guide you through the authentication process on first run.
-
Run the application:
python main.py
Project Structure
main.py: The main entry point of the application.requirements.txt: Lists all Python dependencies.token.json: Stores Google API authentication tokens.src/: Contains the main source code.src/config.py: Configuration settings for the application.src/assets/: Static assets like images and icons.src/core/: Core business logic and API integrations.customer_data_manager.py: Manages customer-related data.google_sheets_api.py: Handles interactions with Google Sheets.time_tracking_data_manager.py: Manages time tracking data.
src/gui/: Contains the graphical user interface components.base_table_logic.py: Base logic for table interactions.base_table_ui.py: Base UI for tables.customer_table_ui.py: UI for customer data table.customer_table.py: Logic for customer data table.info_popup.py: Information popup windows.invoices.py: Invoice generation and management.main_menu.py: Main application menu.settings.py: Application settings UI.start_view.py: Initial view of the application.themes.py: UI theme management.time_tracking_table_ui.py: UI for time tracking table.time_tracking_table.py: Logic for time tracking table.travel_expenses.py: Travel expenses management.
Contributing
Contributions are welcome! Please feel free to submit a pull request or open an issue.
License
This project is licensed under the MIT License. See the LICENSE file for details.