{"id":35551252,"url":"https://github.com/jordanblakey/invisicalc","last_synced_at":"2026-01-28T03:05:45.174Z","repository":{"id":332408955,"uuid":"1121846188","full_name":"jordanblakey/invisicalc","owner":"jordanblakey","description":"NumPad-first calculator application for Gnome.","archived":false,"fork":false,"pushed_at":"2026-01-04T18:49:47.000Z","size":87,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-01-13T19:44:52.174Z","etag":null,"topics":["adwaita-theme","calculator","clang","gnome","gtk4"],"latest_commit_sha":null,"homepage":"","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/jordanblakey.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"COPYING","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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-12-23T16:45:35.000Z","updated_at":"2026-01-04T18:49:50.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/jordanblakey/invisicalc","commit_stats":null,"previous_names":["jordanblakey/invisicalc"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/jordanblakey/invisicalc","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jordanblakey%2Finvisicalc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jordanblakey%2Finvisicalc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jordanblakey%2Finvisicalc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jordanblakey%2Finvisicalc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jordanblakey","download_url":"https://codeload.github.com/jordanblakey/invisicalc/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jordanblakey%2Finvisicalc/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28835928,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-28T02:10:51.810Z","status":"ssl_error","status_checked_at":"2026-01-28T02:10:50.806Z","response_time":57,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["adwaita-theme","calculator","clang","gnome","gtk4"],"created_at":"2026-01-04T07:23:30.996Z","updated_at":"2026-01-28T03:05:45.169Z","avatar_url":"https://github.com/jordanblakey.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n# Invisicalc\n\nInvisicalc is a lightning-fast, NumPad-centric calculator designed for rapid basic arithmetic. Think of it as a dedicated visual extension of your keyboard's NumPad—unobtrusive, immediate, and purely functional. Built with C, GTK 4, and Libadwaita for a modern, native GNOME experience.\n\n## Features\n\n- **Standard Calculator Functions**: Add, subtract, multiply, divide, exponents and parentheses.\n- **Modern UI**: Uses Libadwaita for a sleek, adaptive interface that fits perfectly on the GNOME desktop.\n- **Keyboard Support**: Full support for numpad and standard keyboard numbers/operators.\n- **Desktop Integration**: Includes a proper application icon and dock integration.\n- **Blueprint Layouts**: The UI is defined using `.blp` blueprint files for concise and readable layout definitions.\n- **Custom Styling**: Styled with CSS for a polished look.\n\n## Shortcuts\n\n- `Enter` / `Numpad Enter` / `=`: Calculate result\n- `Backspace`: Delete last character\n- `Escape` / `c` / `C`: Clear display\n- `Ctrl+Q` or `Ctrl+W`: Quit application\n\n## Prerequisites\n\nTo build Invisicalc, you need the following dependencies:\n\n- `meson` (\u003e= 1.0.0)\n- `ninja-build`\n- `pkg-config`\n- `libgtk-4-dev`\n- `libadwaita-1-dev` (\u003e= 1.4)\n- `blueprint-compiler`\n\nFor Debian/Ubuntu packaging tools:\n- `build-essential`\n- `debhelper`\n- `dh-make`\n- `git-buildpackage`\n- `devscripts`\n\n## Building from Source\n\nYou can build the application using the Meson build system.\n\n### Quick Start (Development)\n\nTo quickly compile and run the application locally:\n\n```bash\nmake run\n```\n\n### Manual Build Instructions\n\n```bash\n# Setup the build directory\nmeson setup build\n\n# Compile the application\nmeson compile -C build\n\n# Run the application (without installing)\n./build/src/invisicalc\n```\n\n## Debian Packaging\n\nThis project includes a `Makefile` to simplify the Debian packaging workflow. It uses `git-buildpackage` (gbp) to manage builds.\n\n### Commands\n\n- **Build Package**: Increments the version, commits the change, and builds the `.deb` package.\n  ```bash\n  make deb\n  ```\n  The resulting artifacts will be placed in the `deb-build/` directory.\n\n- **Install Package**: Installs the newly built package.\n  ```bash\n  make install\n  ```\n\n- **Clean**: Removes build artifacts.\n  ```bash\n  make clean\n  ```\n\n### Manual Packaging Workflow\n\nIf you prefer running the commands manually:\n\n1.  **Increment Version**:\n    ```bash\n    dch --increment \"Your change message\"\n    git add debian/changelog \u0026\u0026 git commit -m \"Bump version\"\n    ```\n\n2.  **Build**:\n    ```bash\n    mkdir -p deb-build\n    # Ensure source tarball exists if needed, or rely on git tag/branch\n    gbp buildpackage -us -uc --git-ignore-branch --git-export-dir=deb-build\n    ```\n\n## Project Structure\n\n- `src/`: Source code.\n    - `main.blp`: The main window layout definition (Blueprint).\n    - `main.css`: Application-wide CSS styling.\n    - `invisicalc-*.c/h`: C source files for application logic and window management.\n- `data/`: Desktop files, icons, and GSettings schemas.\n- `debian/`: Debian packaging metadata (control, rules, changelog).\n- `po/`: Translations.\n\n## Development Notes\n\n- **CSS**: Styles are loaded from `src/main.css`.\n- **Blueprints**: The `blueprint-compiler` is used to compile `.blp` files into XML `.ui` files during the build process.\n- **Resources**: The application uses `GResource` to embed the UI and CSS files into the binary.\n\n```txt\ndpkg -L invisicalc\n\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjordanblakey%2Finvisicalc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjordanblakey%2Finvisicalc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjordanblakey%2Finvisicalc/lists"}