{"id":13608999,"url":"https://github.com/terminalpp/terminalpp","last_synced_at":"2025-04-12T17:33:31.213Z","repository":{"id":152107324,"uuid":"218383553","full_name":"terminalpp/terminalpp","owner":"terminalpp","description":"Minimalist, fast, cross-platform terminal emulator.","archived":false,"fork":false,"pushed_at":"2024-03-08T15:38:41.000Z","size":7295,"stargazers_count":53,"open_issues_count":10,"forks_count":4,"subscribers_count":4,"default_branch":"master","last_synced_at":"2024-11-07T14:42:38.571Z","etag":null,"topics":["linux","macos","terminal-emulator","windows"],"latest_commit_sha":null,"homepage":"https://terminalpp.com","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/terminalpp.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE.md","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},"funding":{"github":"zduka"}},"created_at":"2019-10-29T21:05:37.000Z","updated_at":"2024-10-15T09:45:37.000Z","dependencies_parsed_at":"2023-11-12T22:25:47.763Z","dependency_job_id":"abf1d00a-294d-4c6e-8787-000c464fa2dd","html_url":"https://github.com/terminalpp/terminalpp","commit_stats":null,"previous_names":[],"tags_count":14,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/terminalpp%2Fterminalpp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/terminalpp%2Fterminalpp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/terminalpp%2Fterminalpp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/terminalpp%2Fterminalpp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/terminalpp","download_url":"https://codeload.github.com/terminalpp/terminalpp/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248605468,"owners_count":21132175,"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":["linux","macos","terminal-emulator","windows"],"created_at":"2024-08-01T19:01:31.624Z","updated_at":"2025-04-12T17:33:26.203Z","avatar_url":"https://github.com/terminalpp.png","language":"C++","funding_links":["https://github.com/sponsors/zduka"],"categories":["C++"],"sub_categories":[],"readme":"# Terminal++\n\n[![Windows build](https://img.shields.io/github/workflow/status/terminalpp/terminalpp/windows-build?logo=windows\u0026logoColor=white\u0026style=flat-square\u0026label=native%2bqt)](https://github.com/terminalpp/terminalpp/actions?query=workflow%3Awindows-build)\n[![Linux build](https://img.shields.io/github/workflow/status/terminalpp/terminalpp/linux-build?logo=linux\u0026logoColor=white\u0026style=flat-square\u0026label=native%2bqt)](https://github.com/terminalpp/terminalpp/actions?query=workflow%3Alinux-build)\n[![macOs build QT](https://img.shields.io/github/workflow/status/terminalpp/terminalpp/macos-build?logo=apple\u0026logoColor=white\u0026style=flat-square\u0026label=qt)](https://github.com/terminalpp/terminalpp/actions?query=workflow%3Amacos-build)\n[![packages](https://img.shields.io/github/workflow/status/terminalpp/terminalpp/packages?label=packages\u0026logo=buffer\u0026logoColor=white\u0026style=flat-square)](https://github.com/terminalpp/terminalpp/actions?query=workflow%3Apackages)\n\n[![Codacy grade](https://img.shields.io/codacy/grade/fd4f07b095634b9d90bbb9edb11fc12c?logo=codacy\u0026style=flat-square)](https://app.codacy.com/manual/zduka/terminalpp)\n[![LGTM Grade](https://img.shields.io/lgtm/grade/cpp/github/terminalpp/terminalpp?logo=LGTM\u0026style=flat-square)](https://lgtm.com/projects/g/terminalpp/terminalpp?mode=list)\n[![Sonar Quality Gate](https://img.shields.io/sonar/quality_gate/terminalpp_terminalpp?logo=sonarcloud\u0026server=https%3A%2F%2Fsonarcloud.io\u0026style=flat-square)](https://sonarcloud.io/dashboard?id=terminalpp_terminalpp)\n[![Sonar Coverage](https://img.shields.io/sonar/coverage/terminalpp_terminalpp?logo=sonarcloud\u0026server=http%3A%2F%2Fsonarcloud.io\u0026style=flat-square)](https://sonarcloud.io/component_measures?id=terminalpp_terminalpp\u0026metric=coverage\u0026view=list)\n\n\u003e Please note that `terminalpp` is in beta stage and there may (and will) be rough edges. That said, it has been used by a few people as their daily driver with only minor issues. If you encounter a problem, please file an issue!\n\nThis is the main development repository for the `terminalpp` and its suppport repositories. For more details about how to install `terminalpp` on your machine please visit the [homepage](https://terminalpp.com). This readme provides information on how to build the repository from source only. \n\n# Supported Platforms\n\nPlatform | Renderer | Notes\n---------|----------|---------------\nWindows  | Native   | uses DirectWrite\nLinux    | Native   | uses X11\nmacOS    | QT       | limited testing as I do not have real Apple computer\n\n# Building From Sources\n\n`cmake` is used to build the terminal and related projects as well as to orchestrate the generation of installation packages. Following sections describe the build process on the different platforms:\n\n\u003e A good way to start is to look at the CI configurations in `.github/workflows` folder where build steps for each supported platform are detailed. \n\n## Windows \n\nThe latest Windows 10 stable version is always supported. `terminalpp` may run on older Windows 10 versions since Fall 2018 (first ConPTY release). Visual Studio 2019 for C++ and Win32 apps must be installed. \n\nBuild process:\n\n    mkdir build\n    cd build\n    cmake ..\n    cmake --build . --config Release \n\nFor details about how to build the `tpp-bypass` app, refer to the Linux instructions below as bypass is built inside the WSL it is intended for.\n\n## Linux\n\nTested on latest and LTS versions of Ubuntu. Before building the prerequisite packages must be installed via the `setup-linux.sh` script, i.e.:\n\n    bash scripts/setup-linux.sh\n\nThen build the application using the following commands:\n\n    mkdir -p build/release\n    cd build/release\n    cmake ../.. -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_COMPILER=gcc-9 -DCMAKE_CXX_COMPILER=g++-9\n    cmake --build .\n\n## macOS\n\nmacOS Catalina 10.15 and above is supported (due to lack of `std::filesystem` in previous releases). On macOS native rendere is not available and QT must be used instead. Before installation, `brew` must be available. To install prerequisites, run the setup script, i.e: \n\n    bash scripts/setup-macos.sh\n\nThen build the application using the following commands:\n\n    mkdir -p build/release\n    cd build/release\n    cmake ../.. -DCMAKE_BUILD_TYPE=Release\n    cmake --build . \n\nIf QT is not found, try adding adding the following to the cmake command `-DCMAKE_PREFIX_PATH=/usr/local/opt/qt`.\n\n# Building Installation Packages\n\nUse the `packages` target and `-DINSTALL=xxx` `cmake` configuration option to determine which packages should be built (`xxx` can be `terminalpp` (default), `ropen`, or `tpp-bypass`). \n\nDepending on the availability of the packaging tools (WiX, MakeAppx.exe, rpmbuild, snapcraft, etc.) the respective packages will be created in the `packages` directory inside the build. \n\n\u003e For more details see the github action `packages`.\n\n## Manual installation\n\nOnce the package to be created has been selected via `-DINSTALL=xxx`, the default `install` target can be used to install the respective applications (Linux only):\n\n    sudo cmake --build . --target install\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fterminalpp%2Fterminalpp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fterminalpp%2Fterminalpp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fterminalpp%2Fterminalpp/lists"}