{"id":19170298,"url":"https://github.com/sashadev-sky/model-gui","last_synced_at":"2026-05-07T14:33:19.172Z","repository":{"id":122652989,"uuid":"303857672","full_name":"sashadev-sky/Model-GUI","owner":"sashadev-sky","description":"Reusable GUI component to visually interact with a SQLite database","archived":false,"fork":false,"pushed_at":"2023-03-15T01:41:40.000Z","size":29,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-01-04T00:18:43.312Z","etag":null,"topics":["python","sqlite","tkinter"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sashadev-sky.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-10-14T00:07:07.000Z","updated_at":"2023-03-15T01:41:43.000Z","dependencies_parsed_at":null,"dependency_job_id":"e5189e33-411b-4900-9f8a-59dfc02fcb01","html_url":"https://github.com/sashadev-sky/Model-GUI","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sashadev-sky%2FModel-GUI","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sashadev-sky%2FModel-GUI/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sashadev-sky%2FModel-GUI/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sashadev-sky%2FModel-GUI/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sashadev-sky","download_url":"https://codeload.github.com/sashadev-sky/Model-GUI/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240250405,"owners_count":19771784,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["python","sqlite","tkinter"],"created_at":"2024-11-09T09:53:35.300Z","updated_at":"2026-05-07T14:33:19.128Z","avatar_url":"https://github.com/sashadev-sky.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# GUI Components\n\n- A responsive pair of reusable GUI components made with Tkinter, the Python\n binding to the Tk GUI toolkit\n\n- Allows visual dataset interrogation\n\n- Demonstrated with SQLite3\n\nEnvironment Setup\n\n- Python 3\n- SQLite3\n- Tkinter\n\n### ScrollBox\n\n- `ScrollBox` inherits from Tkinter\\'s `ListBox` to conveniently combine a\n `ListBox` and a `ScrollBar` together into a single component.\n\n### DataListBox\n\n- `DataListBox` inherits from `ScrollBox` to make it capable of loading its own\n data and, optionally, linking to another `DataListBox` or Tkinter `Label`.\n\n## Run the demo\n\nFrom the root directory, Ubuntu, Linux and Mac users:\n\n```shell\npython3 project/db_connection.py\n```\n\nFrom the root directory, Windows users:\n\n```shell\npython --version  # ensure at least 3.x.x\npython project/db_connection.py\n```\n\n---\n\n#### SQLite / Python Concepts (personal use)\n\n---\n\n- **SQLite** is not client-server. The database server is not\n running on a remote machine that you connect to; instead everything is\n running on the same machine.\n  - `_id INTEGER PRIMARY KEY`: some Java classes that\n   Android uses to handle databases actually require an `_id` column (as\n   opposed to `id`) so it's a good habit to get into to use that name for\n    Python also.\n\n- **Docstring**\n  \u003e A docstring is a string literal that occurs as the first\n   statement in a module, function, class, or method definition. Such a docstring becomes the `__doc__` special attribute of that object.\n\n  - Python has the built-in function `help()` that prints out the objects\n   docstring to the console.\n    - How is this output generated?\n      1. Via the `__doc__` property.\n      2. The strategic placement of the string literal directly below the\n       object will automatically set the `__doc__` value.\n  - **Type - Class Docstrings**\n    - The docstrings are placed immediately following the class or class\n     method indented by one level.\n  - **Format - ReST (reStructuredText)**\n    - \u003cpre\u003e\n      :param \u0026lt;param_type\u003e \u0026lt;param_name\u003e: \u0026lt;param_description\u003e\n      \u003c/pre\u003e\n      \u003cpre\u003e\n      :param \u0026lt;param_name\u003e: \u0026lt;param_description\u003e\n      :type \u0026lt;param_name\u003e: \u0026lt;param_type\u003e\n      \u003c/pre\u003e\n    - \u003cpre\u003e\n      :return: \u0026lt;return_description\u003e\n      :rtype: \u0026lt;return_type\u003e\n      \u003c/pre\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsashadev-sky%2Fmodel-gui","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsashadev-sky%2Fmodel-gui","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsashadev-sky%2Fmodel-gui/lists"}