{"id":13740247,"url":"https://github.com/greenfork/kisa","last_synced_at":"2025-05-08T19:36:47.427Z","repository":{"id":44551026,"uuid":"379572095","full_name":"greenfork/kisa","owner":"greenfork","description":"Text editor of the new world","archived":false,"fork":false,"pushed_at":"2022-08-30T09:18:07.000Z","size":1149,"stargazers_count":77,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-05-06T11:04:43.428Z","etag":null,"topics":["console-application","editor","kisa","modal-editing","tui","zig"],"latest_commit_sha":null,"homepage":"https://git.sr.ht/~greenfork/kisa","language":"Zig","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/greenfork.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}},"created_at":"2021-06-23T10:57:40.000Z","updated_at":"2025-04-11T05:11:04.000Z","dependencies_parsed_at":"2022-09-04T04:41:53.915Z","dependency_job_id":null,"html_url":"https://github.com/greenfork/kisa","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/greenfork%2Fkisa","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/greenfork%2Fkisa/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/greenfork%2Fkisa/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/greenfork%2Fkisa/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/greenfork","download_url":"https://codeload.github.com/greenfork/kisa/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253135823,"owners_count":21859688,"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":["console-application","editor","kisa","modal-editing","tui","zig"],"created_at":"2024-08-03T04:00:44.983Z","updated_at":"2025-05-08T19:36:46.226Z","avatar_url":"https://github.com/greenfork.png","language":"Zig","readme":"# Kisa\n\nKisa is a hackable and batteries-included text editor of the new world.\n\nHome repository is on [sourcehut] but there's also a mirror on [GitHub].\n\n[sourcehut]: https://git.sr.ht/~greenfork/kisa/\n[GitHub]: https://github.com/greenfork/kisa\n\nKisa is in its early stage and it is not usable at the moment. See [roadmap]\nfor the current progress.\n\n[roadmap]: https://greenfork.github.io/kisa/ROADMAP.html\n\nThere's a growing set of [design documents](design_docs/), beware most\nof it is not implemented.\n\n## Purpose\n\nI, greenfork, the one who started this project, would like to have a\nsupreme code editor. I want to edit code with pleasure, I want to know\nthat whenever I feel something is not right - I have enough power to fix it,\nbut with great power comes great responsibility. I shall wield this power\nwith caution and I shall encourage my peers and empower them to follow\nmy steps and eventually let them lead me instead of simply being led.\n\n## Zen\n\n* Programmer must be able to perfect their tool.\n* Choice is burden.\n* Choice is freedom.\n\n## Goals\n\n* Provide a powerful and flexible code editor - obvious but worth saying,\n  we should not provide anything less than that.\n* Identify common workflows and set them in stone - text editing has become\n  quite sophisticated in this day and age, we have already discovered a lot\n  of editing capabilities. Now is the time to make them easy to use and fully\n  integrated with the rest of the features of the editor, not rely on\n  third-party plugins to emulate the necessary features.\n* Adhere to hybrid Unix/Apple philosophy - programs must be able to communicate\n  with each other, the editor must make integrations with other tools possible,\n  this is from Unix philosophy. At the same time the editor must be built from\n  ground-up and have full control of all its core features to provide a\n  single and uniform way of doing things, this is from Apple philosophy.\n* Make it infinitely extensible by design, no hard assumptions - the only types of\n  unimplementable features are those which were not accounted for from the\n  very beginning and got hardblocked by design decisions which are interleaved\n  with the rest of the editor, so changing it is not feasible. The solution\n  is simple - layers and layers of abstractions, assumptions are strictly\n  kept to minimum by careful thinking about the public API design of each layer.\n* Make it hackable - I believe there are several key points to make an editor\n  hackable: interesting design, clean code, extensive development documentation,\n  friendly attitude to anyone trying.\n\n## Communication\n\n* \u003c~greenfork/kisa-announce@lists.sr.ht\u003e - readonly mailing list for rare\n  announcements regarding this project, [web archive][announce-list]. Subscribe\n  to this list by sending any email to\n  \u003c~greenfork/kisa-announce+subscribe@lists.sr.ht\u003e.\n* \u003c~greenfork/kisa-devel@lists.sr.ht\u003e - mailing list for discussions and\n  sending patches, [web archive][devel-list]\n* \u003chello@greenfork.me\u003e - my personal email address\n* [Discord] - real-time chatting experience\n* [Twitch] - occasional streams including editor development\n* [YouTube] - recordings of past streams and other related videos\n\nPlease be kind and understanding to everyone.\n\nAre you new to mailing lists? Please check out [this tutorial](https://man.sr.ht/lists.sr.ht/).\nThere's also the [in-detail comparison video](https://youtu.be/XVe9SD3kSR0) of pull requests\nversus patches.\n\n[announce-list]: https://lists.sr.ht/~greenfork/kisa-announce\n[devel-list]: https://lists.sr.ht/~greenfork/kisa-devel\n[Discord]: https://discord.gg/p5892XNmAk\n[Twitch]: https://www.twitch.tv/greenfork_gf\n[YouTube]: https://www.youtube.com/channel/UCinLbIxD_iIrByWR9fvO2kQ/videos\n\n## Contributing\n\nIdeas are very welcome. At this stage of the project the main task is to\nshape its design and provide proof-of-concept implementations of these ideas.\nCode contributions without previous discussions are unlikely to be accepted\nso please discuss the design first. Ideas should be in-line with the current\ngoals and values of this editor. Many ideas will likely be rejected since not\nall goals and values are identified, but nevertheless they will help us to\nshape the editor.\n\nFor structured discussions please use \u003c~greenfork/kisa-devel@lists.sr.ht\u003e mailing list.\n\n## How to build\n\nCurrently it is only relevant for the development, there's no usable\ntext editor (just yet).\n\nRequirements:\n- Zig master, currently \u003chttps://ziglang.org/builds/zig-linux-x86_64-0.10.0-dev.3685+dae7aeb33.tar.xz\u003e\n- git\n\n```\n$ git clone --recurse-submodules https://github.com/greenfork/kisa\n$ cd kisa\n$ zig build test\n$ zig build run\n```\n\n## Is this a task for a mere mortal?\n\nCode editor is a big project. I have a habit of abandoning projects, I moderately\nlose interest to them. I am not religious but God give me strength.\n\nIn the interview on [Zig Showtime] Andreas Kling, the author of [SerenityOS],\ntalks about how important it is to lay just one brick at a time. Let's try that.\n\n[Zig Showtime]: https://www.youtube.com/watch?v=e_hCJI__q_4\n[SerenityOS]: https://github.com/SerenityOS/serenity\n","funding_links":[],"categories":["Applications","Zig"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgreenfork%2Fkisa","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgreenfork%2Fkisa","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgreenfork%2Fkisa/lists"}