{"id":24066334,"url":"https://github.com/rainlanguage/rainlang-codemirror","last_synced_at":"2026-04-18T10:09:57.887Z","repository":{"id":152453309,"uuid":"615053509","full_name":"rainlanguage/rainlang-codemirror","owner":"rainlanguage","description":"Rain language implementation for codemirror text editor","archived":false,"fork":false,"pushed_at":"2025-08-15T12:07:30.000Z","size":533,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-10-19T11:30:31.083Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rainlanguage.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2023-03-16T21:23:56.000Z","updated_at":"2025-08-15T12:07:34.000Z","dependencies_parsed_at":"2024-02-20T22:31:25.255Z","dependency_job_id":"0ae2bba0-70a5-4e72-9d12-8bb7a0154b2a","html_url":"https://github.com/rainlanguage/rainlang-codemirror","commit_stats":null,"previous_names":["rainlanguage/rainlang-codemirror","rainprotocol/rainlang-codemirror"],"tags_count":29,"template":false,"template_full_name":null,"purl":"pkg:github/rainlanguage/rainlang-codemirror","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rainlanguage%2Frainlang-codemirror","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rainlanguage%2Frainlang-codemirror/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rainlanguage%2Frainlang-codemirror/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rainlanguage%2Frainlang-codemirror/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rainlanguage","download_url":"https://codeload.github.com/rainlanguage/rainlang-codemirror/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rainlanguage%2Frainlang-codemirror/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31964655,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-18T00:39:45.007Z","status":"online","status_checked_at":"2026-04-18T02:00:07.018Z","response_time":103,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":[],"created_at":"2025-01-09T11:40:26.070Z","updated_at":"2026-04-18T10:09:57.851Z","avatar_url":"https://github.com/rainlanguage.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# **Rain Language - Codemirror**\nThe Rain language (aka rainlang) implementaion for codemirror, which works as a codemirror extension.\nThis extention provides: \n- Syntax highlighting (written in lezer grammar)\n- Diagnostics \n- Completion (through codemirror autocomplete extension)\n- Hover (through codemirror hoverTooltip extension)\n\nThis repo uses and utilized original source code from [codemirror-languageserver](https://github.com/FurqanSoftware/codemirror-languageserver).\n\nThe primary goal of the Rain language is to make smart contract development accessible for as many people as possible. This is fundamentally grounded in our belief that accessibility is the difference between theoretical and practical decentralisation. There are many people who would like to participate in authoring and auditing crypto code but currently cannot. When someone wants/needs to do something but cannot, then they delegate to someone who can, this is by definition centralisation.\n\nFor more info and details about rainlang, please read this [article](https://hackmd.io/@REJeq0MuTUiqnjx9w5SsUA/HJj9s-nfi#Rainlang-has-a-spectrum-of-representations-from-concise-gtexplicit).\n\nIf you find an issue or you want to propose an improvement, please feel free to post it on: [issues](https://github.com/rainprotocol/rainlang-codemirror/issues)\n\n## **Tutorial**\nTo get started, install the package:\n```bash\nyarn add codemirror-rainlang\nor\nnpm install codemirror-rainlang\n```\n\u003cbr\u003e\n\nThen you can use any of `RainLanguage()`, `RainlangExtension` an `RainlangDescription` to get rainlang codemirror extension:\n```typescript\n// import\nimport { RainLanguage, RainLanguageServicesFacet } from \"codemirror-rainlang\";\n\n// get the `LanguageSupport` instance\nconst rainlangCodemirror = new RainlangExtension(config);\n\n// for getting the plugin instance of a running extension\nconst rainViewPlugin = rainlangCodemirror.plugin;\n\n// get the MetaStore instance or EditorView instance\nconst view = rainPlugin?.view;\nconst metaStore = rainPlugin?.metaStore;\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frainlanguage%2Frainlang-codemirror","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frainlanguage%2Frainlang-codemirror","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frainlanguage%2Frainlang-codemirror/lists"}