{"id":20128522,"url":"https://github.com/cococry/ticalc","last_synced_at":"2025-07-09T18:34:46.366Z","repository":{"id":238740001,"uuid":"797416408","full_name":"cococry/ticalc","owner":"cococry","description":"Small, modern, hardware accelerated  UI calculator","archived":false,"fork":false,"pushed_at":"2024-05-13T11:45:43.000Z","size":2695,"stargazers_count":18,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-09T15:56:42.144Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cococry.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,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-05-07T19:37:50.000Z","updated_at":"2025-01-13T02:54:18.000Z","dependencies_parsed_at":"2024-05-13T12:50:45.669Z","dependency_job_id":"2e5f8010-9646-490b-85fd-805cd6ebfba7","html_url":"https://github.com/cococry/ticalc","commit_stats":null,"previous_names":["cococry/ticalc"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/cococry/ticalc","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cococry%2Fticalc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cococry%2Fticalc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cococry%2Fticalc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cococry%2Fticalc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cococry","download_url":"https://codeload.github.com/cococry/ticalc/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cococry%2Fticalc/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264502387,"owners_count":23618587,"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":[],"created_at":"2024-11-13T20:27:28.752Z","updated_at":"2025-07-09T18:34:46.315Z","avatar_url":"https://github.com/cococry.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ticalc\n\n\u003cdiv style=\"display: flex;\"\u003e\n    \u003cimg src=\"https://github.com/cococry/ticalc/blob/main/branding/ticalc-showcase.png\" style=\"flex: 50%; padding: 20px;\" width=\"250px\"\u003e\n\u003c/div\u003e\n\n## Overview\n\nTicalc is built to be very small and minimalistic while still retaining\naesthetics and functionality. The codebase is contained in only about 450 lines of code that are\nstructured in 2 .c files.\n\nThe UI enigne/library used for the interface is [libleif](https://github.com/cococry/leif) which is\na minimalistic stb-like immediate mode UI library. (~3500 lines of code). The library uses OpenGL\nas a graphics backend and [glfw](https://github.com/glfw/glfw) is used for window handling.\n\nThe calculator is highly configurable and easily extendable due to its very small and readable codebase.\nAs a sidenote, the entire application can be used by only using keyboard shortcuts and number input.\n\n## Installation\n\n- Install the dependencies\n\n\nOn arch:\n```console\nparu -S make gcc cglm libclipboard glfw ttf-roboto-mono\n```\n\nOn debian:\n\n\nNote: You will have to build libclipboard yourself.\nFollow the instructions [here](https://github.com/jtanx/libclipboard?tab=readme-ov-file#building).\n```console\nsudo apt-get install make gcc libglfw3 libglfw3-dev libcglm-dev fonts-roboto\n```\n\n- Clone the repository\n```console\ngit clone https://github.com/cococry/ticalc\ncd ticalc\n```\n\n- Build \u0026 Install\n\n```console\nsudo make \u0026\u0026 sudo make install\n```\n\n## Uninstalling\n\n```console\nsudo make uninstall\n```\n\n## Running\n\nThere is a .desktop file that is automatically installed on install that you can\naccess or just run the binary via terminal:\n\n```console\nticalc\n```\n\n## Build Dependencies\n\n| Dependency         |  Reason of Usage    |\n| ----------------|-------------|\n| [leif](https://github.com/cococry/leif) | Creating the entire UI Frontend |\n| [libm](https://en.wikipedia.org/wiki/C_mathematical_functions#libm) | Mathematical functions |\n| [llibclipboard](https://github.com/jtanx/libclipboard) | Handling clipboard |\n| [libGL](https://dri.freedesktop.org/wiki/libGL/) | OpenGL Functionality |\n| [GLFW](https://github.com/glfw/glfw) | Handling windowing, input etc. |\n| [glad](https://github.com/Dav1dde/glad) | Loading OpenGL functions |\n| [stb_image](https://github.com/nothings/stb/blob/master/stb_image.h) | Loading image files into memory |\n| [stb_image_resize2](https://github.com/nothings/stb/blob/master/stb_image_resize2.h) | Resizing images |\n| [stb_truetype](https://github.com/nothings/stb/blob/master/stb_truetype.h) | Loading font glyphs from font files |\n| [cglm](https://github.com/recp/cglm) | Linear Algebra Math |\n\n## Lines of Code\n\n| File         |  Lines of Code |\n| -------------|----------------|\n| ticalc.c     | 345            |\n| config.h     | 43             |\n| eval.h       | 2              |\n| eval.c       | 73             |\n| **Total**    | 463            |\n\n## Contributing\nYou can contribute to ticalc by:\n  - [Fixing bugs or contributing to features](https://github.com/cococry/ticalc/issues)\n  - [Changing features or adding new functionality](https://github.com/cococry/ticalc/pulls)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcococry%2Fticalc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcococry%2Fticalc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcococry%2Fticalc/lists"}