{"id":13579591,"url":"https://github.com/rofl0r/concol","last_synced_at":"2025-10-27T18:43:56.946Z","repository":{"id":138311080,"uuid":"1903201","full_name":"rofl0r/concol","owner":"rofl0r","description":"terminal wrapper library for ncurses with smooth 256 color handling, termbox, or a virtual terminal on SDL","archived":false,"fork":false,"pushed_at":"2022-10-16T13:03:33.000Z","size":151,"stargazers_count":19,"open_issues_count":2,"forks_count":0,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-04-11T05:52:17.610Z","etag":null,"topics":["256-colors","curses","library","sdl","terminal"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-2.1","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rofl0r.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}},"created_at":"2011-06-16T00:01:19.000Z","updated_at":"2024-12-18T23:58:27.000Z","dependencies_parsed_at":"2024-01-16T20:29:35.197Z","dependency_job_id":"d0e4dc3e-d486-48da-a253-226d3efc8998","html_url":"https://github.com/rofl0r/concol","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/rofl0r%2Fconcol","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rofl0r%2Fconcol/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rofl0r%2Fconcol/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rofl0r%2Fconcol/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rofl0r","download_url":"https://codeload.github.com/rofl0r/concol/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248351409,"owners_count":21089271,"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":["256-colors","curses","library","sdl","terminal"],"created_at":"2024-08-01T15:01:40.877Z","updated_at":"2025-10-27T18:43:51.918Z","avatar_url":"https://github.com/rofl0r.png","language":"C","funding_links":[],"categories":["C"],"sub_categories":[],"readme":"concol - a library for colourful terminal apps\n==============================================\n\nmost modern terminal emulators feature plenty of colors, between 64 - 256.\nthe major hindrance to its usage is that the (n)curses library makes it very\ndifficult to use them. it sees colors as colorpairs which have to be set up\none after the other, resulting in a ton of code and work to do so.\n\nconcol offers a simple API that allows the programmer to just throw an RGB\nvalue at it (either for background or foreground color) and use that at once.\nthe tedious colorpair manipulation is all done automatically by the library.\n\nas a bonus, there are 3 different backends:\n\n- (n)curses backend (works as well with netbsd curses)\n- SDL backend\n- termbox backend (8 colors only)\n\nthe SDL backend is perfect for developing the app as it allows to debug the\napplication without interference between the terminal modes used by GDB and\nthe app itself, which is usually a major pain when developing ncurses apps.\n\nthe termbox backend otoh is good to make tiny static linked programs when\n8 colors are sufficient, since it is much smaller than (n)curses.\n(note that termbox development diverged a lot from its original goals after\ncommit 66c3f91b. thus it is advised to use the parent of this commit, or use\nthe fork cursebox ( https://github.com/strake/cursebox.c ) (untested).\nlater termbox version weren't tested as well, so they may not work due to\nchanged API.\n\nsee the examples directory for usage of this library.\n\nCompilation\n-----------\n\n    make BACKEND=SDL\n\nor\n\n    make BACKEND=SDL2\n\nor\n\n    make BACKEND=NCURSES\n\nor\n\n    make BACKEND=TERMBOX\n\nif you want to build the example programs, do the same, but use the examples\ntarget, e.g.\n\n    make BACKEND=NCURSES examples\n\nTODO\n----\nit might make sense to start using the colors internally from 256 downwards,\nas this has the advantage that the original 16 terminal colors never get changed\nwhen using less than 240 colors (ncurses backend).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frofl0r%2Fconcol","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frofl0r%2Fconcol","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frofl0r%2Fconcol/lists"}