{"id":16067976,"url":"https://github.com/devmanu-de/probarlib","last_synced_at":"2026-05-05T08:31:57.249Z","repository":{"id":183308102,"uuid":"324415607","full_name":"DevManu-de/probarlib","owner":"DevManu-de","description":"probarlib is a GNU-C89 compatible progress bar for your terminal application. Currently there are 3 bars implemented.","archived":false,"fork":false,"pushed_at":"2021-03-01T19:23:38.000Z","size":192,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-05T10:14:05.191Z","etag":null,"topics":["c","c89","easy-to-use","library","linux","loading-bar","progress-bar","terminal"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/DevManu-de.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2020-12-25T18:45:11.000Z","updated_at":"2021-12-29T03:42:17.000Z","dependencies_parsed_at":null,"dependency_job_id":"2c6916af-7cd9-44e0-ab4f-e37ba853faf4","html_url":"https://github.com/DevManu-de/probarlib","commit_stats":null,"previous_names":["devmanu-de/probarlib"],"tags_count":5,"template":false,"template_full_name":null,"purl":"pkg:github/DevManu-de/probarlib","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DevManu-de%2Fprobarlib","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DevManu-de%2Fprobarlib/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DevManu-de%2Fprobarlib/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DevManu-de%2Fprobarlib/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DevManu-de","download_url":"https://codeload.github.com/DevManu-de/probarlib/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DevManu-de%2Fprobarlib/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267797426,"owners_count":24145705,"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","status":"online","status_checked_at":"2025-07-30T02:00:09.044Z","response_time":70,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["c","c89","easy-to-use","library","linux","loading-bar","progress-bar","terminal"],"created_at":"2024-10-09T06:07:28.582Z","updated_at":"2026-05-05T08:31:57.208Z","avatar_url":"https://github.com/DevManu-de.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# probarlib\nprobarlib is a library that allows you to create a simple progress bar in the terminal.\nYou can customize the text in front of the bar the bar filling character (indicator) and the size of the entire bar.\nCurrently there are 3 bars BasicProgressBar, ComplexProgressBar and ProgressIndicationCircle.\n\nBasicProgressBar:\n\u003e Only requires a text the rest of the bar like resize and apprearence is done automatically.\n\u003e This allows the programmer to implement a progress bar fast with preset values.\n\u003e\n\nComplexProgressBar:\n\u003e This allows the programmer to have a much deeper control over the bar thus may take longer to\n\u003e implement in the project.\n\u003e\n\nIMPORTANT: Both BasicProgressBar and ComplexProgressBar are technically the same everything that can be done with\nthe ComplexProgressBar can also be done with the BasicProgressBar only that the BasicProgressBar doesnt have functions\nto set those variables but they can be changed by editing the structure manually. Optionallly you can use ComplexProgressBar\nfunctions on a BasicProgressBar but its neither recommended nor officially supported.\n\nProgressIndicationCircle:\n\u003e This can display a text and shows a circular animation until it is stopped.\n\u003e\n\nBTW probarlib is GNU-C89 compatible but not windows only linux is tested and supported\n\nIf any questions come up dont hesitate to open an issue or if you want to contribute just open a pull request.\n\n# Description\nThis is a library that allows you to diplay a progress bar that shows the exact percentage (examples/BasicProgressBar)\nor you can use the progress indicator circle that doesnt show a exact percentage (examples/ProgressIndicationCircle).\n\nBasicProgressBar / ComplexProgressBar:\n![BasicProgressBar](images/BasicProgressBar.png)\n\nProgressIndicationCircle:\n![ProgressIndicationCircle](images/ProgressIndicationCircle.png)\n\n# Universal function for both bars\n\n## get_term_width()\n\u003e \n\u003e Return value\n\u003e is the width of the current terminal in characters.\n\n# Test the different bars\n\nThere are examples and usefull documentations in the `examples/` directory for both of the progress bars.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevmanu-de%2Fprobarlib","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdevmanu-de%2Fprobarlib","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevmanu-de%2Fprobarlib/lists"}