{"id":13491005,"url":"https://github.com/elixir-tools/next-ls","last_synced_at":"2025-05-11T04:25:57.560Z","repository":{"id":49101318,"uuid":"514485705","full_name":"elixir-tools/next-ls","owner":"elixir-tools","description":"The language server for Elixir that just works. Ready for early adopters!","archived":false,"fork":false,"pushed_at":"2025-04-08T13:03:46.000Z","size":22025,"stargazers_count":734,"open_issues_count":68,"forks_count":39,"subscribers_count":7,"default_branch":"main","last_synced_at":"2025-04-14T01:05:09.420Z","etag":null,"topics":["elixir","lsp"],"latest_commit_sha":null,"homepage":"https://www.elixir-tools.dev/next-ls","language":"Elixir","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/elixir-tools.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","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":"2022-07-16T05:21:50.000Z","updated_at":"2025-04-10T11:55:06.000Z","dependencies_parsed_at":"2023-07-24T08:03:17.662Z","dependency_job_id":"b0a9b273-1875-4726-9c15-43d68659fba7","html_url":"https://github.com/elixir-tools/next-ls","commit_stats":null,"previous_names":["mhanberg/nextls"],"tags_count":70,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-tools%2Fnext-ls","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-tools%2Fnext-ls/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-tools%2Fnext-ls/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elixir-tools%2Fnext-ls/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/elixir-tools","download_url":"https://codeload.github.com/elixir-tools/next-ls/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253518409,"owners_count":21921056,"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":["elixir","lsp"],"created_at":"2024-07-31T19:00:52.752Z","updated_at":"2025-05-11T04:25:57.536Z","avatar_url":"https://github.com/elixir-tools.png","language":"Elixir","funding_links":["https://github.com/sponsors/mhanberg"],"categories":["Elixir"],"sub_categories":[],"readme":"\u003e [!IMPORTANT]\n\u003e Next LS is merging with Elixir LS and Lexical! Read more about it at [www.elixir-tools.dev.](https://www.elixir-tools.dev/news/the-elixir-tools-update-vol-7/)\n\n# Next LS\n\n[![Documentation](https://img.shields.io/badge/Next_LS-Documentation-gold)](https://www.elixir-tools.dev/docs/next-ls/quickstart)\n[![GitHub release (latest by SemVer including pre-releases)](https://img.shields.io/github/downloads-pre/elixir-tools/next-ls/latest/total?label=Downloads%20-%20Latest%20Release)](https://github.com/elixir-tools/next-ls/releases)\n[![GitHub all releases](https://img.shields.io/github/downloads/elixir-tools/next-ls/total?label=Downloads%20(Total))](https://github.com/elixir-tools/next-ls/releases)\n[![GitHub Discussions](https://img.shields.io/github/discussions/elixir-tools/discussions)](https://github.com/orgs/elixir-tools/discussions)\n[![Discord](https://img.shields.io/badge/Discord-5865F3?style=flat\u0026logo=discord\u0026logoColor=white\u0026link=https://discord.gg/nNDMwTJ8)](https://discord.gg/6XdGnxVA2A)\n\nThe language server for Elixir that just works. 😎\n\nStill in heavy development, but early adopters are encouraged!\n\nPlease see the [docs](https://www.elixir-tools.dev/docs/next-ls/quickstart) to get started.\n\n## Related Links\n\n- [Introducing Next LS and an elixir-tools update](https://www.elixir-tools.dev/news/introducing-next-ls-and-an-elixir-tools-update/)\n- [The elixir-tools Update Vol. 2](https://www.elixir-tools.dev/news/the-elixir-tools-update-vol-2/)\n- [The elixir-tools Update Vol. 3](https://www.elixir-tools.dev/news/the-elixir-tools-update-vol-3/)\n- [The elixir-tools Update Vol. 4](https://www.elixir-tools.dev/news/the-elixir-tools-update-vol-4/)\n- [The 2023 elixir-tools Update (Vol. 5) ](https://www.elixir-tools.dev/news/the-2023-elixir-tools-update-vol-5/)\n- [The elixir-tools Update Vol. 6](https://www.elixir-tools.dev/news/the-elixir-tools-update-vol-6/)\n- [The elixir-tools Update Vol. 7 \u0026 The Great Merge](https://www.elixir-tools.dev/news/the-elixir-tools-update-vol-7/)\n\n## Sponsors\n\nNext LS and elixir-tools are sponsored by a ton of amazing people and companies. I urge you to sponsor if you'd like to see the projects reach their maximum potential 🚀.\n\nhttps://github.com/sponsors/mhanberg\n\n### Platinum + Gold Tier\n\n\u003c!-- gold --\u003e\u003ca href=\"https://github.com/coingaming\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;coingaming.png\" width=\"60px\" alt=\"User avatar: Yolo Group\" /\u003e\u003c/a\u003e\u003c!-- gold --\u003e\n\n### Remaining tiers\n\n\u003c!-- rest --\u003e\u003ca href=\"https://github.com/cigrainger\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;cigrainger.png\" width=\"60px\" alt=\"User avatar: Christopher Grainger\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/mikl\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;mikl.png\" width=\"60px\" alt=\"User avatar: Mikkel Høgh\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/shenaor\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;shenaor.png\" width=\"60px\" alt=\"User avatar: Sebastian Henao\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/akoutmos\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;akoutmos.png\" width=\"60px\" alt=\"User avatar: Alexander Koutmos\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/simon-wolf\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;simon-wolf.png\" width=\"60px\" alt=\"User avatar: Simon Wolf\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/sorentwo\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;sorentwo.png\" width=\"60px\" alt=\"User avatar: Parker Selbert\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/chriscrabtree\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;chriscrabtree.png\" width=\"60px\" alt=\"User avatar: \" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/Nezteb\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;Nezteb.png\" width=\"60px\" alt=\"User avatar: Noah Betzen\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/sorenone\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;sorenone.png\" width=\"60px\" alt=\"User avatar: Shannon Selbert\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/dkarter\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;dkarter.png\" width=\"60px\" alt=\"User avatar: Dorian Karter\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/andrepaes\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;andrepaes.png\" width=\"60px\" alt=\"User avatar: André Luiz da Fonsêca Paes\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/dyackson\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;dyackson.png\" width=\"60px\" alt=\"User avatar: jackson millsaps\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/brettwise\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;brettwise.png\" width=\"60px\" alt=\"User avatar: Brett Wise\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/dbernheisel\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;dbernheisel.png\" width=\"60px\" alt=\"User avatar: David Bernheisel\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/qdentity\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;qdentity.png\" width=\"60px\" alt=\"User avatar: Qdentity\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/NFIBrokerage\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;NFIBrokerage.png\" width=\"60px\" alt=\"User avatar: NFIBrokerage\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/RudolfMan\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;RudolfMan.png\" width=\"60px\" alt=\"User avatar: Rudolf Manusadzhian\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/clark-lindsay\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;clark-lindsay.png\" width=\"60px\" alt=\"User avatar: Clark Lindsay\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/sb8244\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;sb8244.png\" width=\"60px\" alt=\"User avatar: Stephen Bussey\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/getsupered\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;getsupered.png\" width=\"60px\" alt=\"User avatar: Supered\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/kgautreaux\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;kgautreaux.png\" width=\"60px\" alt=\"User avatar: Keith Gautreaux\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/szTheory\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;szTheory.png\" width=\"60px\" alt=\"User avatar: \" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/jlgeering\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;jlgeering.png\" width=\"60px\" alt=\"User avatar: Jean-Luc Geering\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/jwright\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;jwright.png\" width=\"60px\" alt=\"User avatar: Jamie Wright\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/znorris\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;znorris.png\" width=\"60px\" alt=\"User avatar: Zach Norris\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/capitalist\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;capitalist.png\" width=\"60px\" alt=\"User avatar: Joe Martinez\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/josevalim\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;josevalim.png\" width=\"60px\" alt=\"User avatar: José Valim\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/ideaMarcos\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;ideaMarcos.png\" width=\"60px\" alt=\"User avatar: Marcos\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/ddresselhaus\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;ddresselhaus.png\" width=\"60px\" alt=\"User avatar: Dan Dresselhaus\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/marcelfahle\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;marcelfahle.png\" width=\"60px\" alt=\"User avatar: Marcel Fahle\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/amplifiedai\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;amplifiedai.png\" width=\"60px\" alt=\"User avatar: Amplified\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/davydog187\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;davydog187.png\" width=\"60px\" alt=\"User avatar: Dave Lucia\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/sa-hr\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;sa-hr.png\" width=\"60px\" alt=\"User avatar: Pametno Računovodstvo - SmartAccount\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/marpo60\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;marpo60.png\" width=\"60px\" alt=\"User avatar: Marcelo Dominguez\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/jyc\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;jyc.png\" width=\"60px\" alt=\"User avatar: \" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/agundy\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;agundy.png\" width=\"60px\" alt=\"User avatar: Aaron Gunderson\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/dickykuang\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;dickykuang.png\" width=\"60px\" alt=\"User avatar: Dicky Kuang\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/leandrocp\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;leandrocp.png\" width=\"60px\" alt=\"User avatar: Leandro Pereira\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/bravely\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;bravely.png\" width=\"60px\" alt=\"User avatar: Jake Demarest-Mays\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/batteries-included\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;batteries-included.png\" width=\"60px\" alt=\"User avatar: Batteries Included\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/martide\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;martide.png\" width=\"60px\" alt=\"User avatar: Martide\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/Neophen\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;Neophen.png\" width=\"60px\" alt=\"User avatar: Mykolas Mankevicius\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/bo0tzz\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;bo0tzz.png\" width=\"60px\" alt=\"User avatar: \" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/bkilshaw\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;bkilshaw.png\" width=\"60px\" alt=\"User avatar: Brad Kilshaw\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/vasspilka\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;vasspilka.png\" width=\"60px\" alt=\"User avatar: Vasilis Spilka\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/brendon9x\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;brendon9x.png\" width=\"60px\" alt=\"User avatar: Brendon McLean\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/zorn\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;zorn.png\" width=\"60px\" alt=\"User avatar: Mike Zornek\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/ahey\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;ahey.png\" width=\"60px\" alt=\"User avatar: Alan Heywood\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/recycla\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;recycla.png\" width=\"60px\" alt=\"User avatar: Recycla\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/wojtekmach\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;wojtekmach.png\" width=\"60px\" alt=\"User avatar: Wojtek Mach\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/jswny\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;jswny.png\" width=\"60px\" alt=\"User avatar: Joe Sweeney\" /\u003e\u003c/a\u003e\u003ca href=\"https://github.com/Pringels\"\u003e\u003cimg src=\"https:\u0026#x2F;\u0026#x2F;github.com\u0026#x2F;Pringels.png\" width=\"60px\" alt=\"User avatar: Peter Ringelmann\" /\u003e\u003c/a\u003e\u003c!-- rest --\u003e\n\n## Development\n\nNext LS uses [just](https://github.com/casey/just) to coordinate command tasks.\n\n```bash\n# list all tasks\njust --list\n# show a fzf finder of all tasks\njust choose\n\n# default task, runs `deps compile build-local\njust\n\n# install deps\njust deps\n\n# install compile\njust compile\n\n# start the local server for development in TCP mode\n# see editor extension docs for information on how to connect to a server in TCP mode\njust start\n\n# run the tests\njust test\n\n# build a local burrito'd exe\njust build-local\n\n# build burrito'd exes for all platforms\njust build-all\n```\n\n## Production release\n\n### Burrito\n\nBurrito is the classic way of building Next LS, it produces a single executable that fully wraps Elixir, OTP, and your application.\n\nExecutables are output to `./burrito_out`.\n\n```bash\n# produces executables for all the targets specified in the `mix.exs` file\njust build-all\n\n# produce an executable for a single target\njust build-local\n```\n\n### Traditional\n\nYou can also build Next LS as a traditional Mix release.\n\n```bash\njust build-plain\n```\n\n## Contributing\n\nThis project follows [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/) and will \"Squash and Merge\" pull requests. \n\nThis means that you don't necessarily need to write your actual commit messages with Conventional Commits, but the Pull Request title needs to, as it is used as the commit title when squashing and merging. There is a CI check to enforce this.\n\nConventional Commits are required to use [Release Please](https://github.com/googleapis/release-please), which is used to automate the changelog, release, and building/publishing executables.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Felixir-tools%2Fnext-ls","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Felixir-tools%2Fnext-ls","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Felixir-tools%2Fnext-ls/lists"}