language-tools
language-tools copied to clipboard
Language tools for Astro
Astro Language Tools
This repository contains all the editor tooling required for the Astro language (.astro
files).
Notably, it contains an implementation of the Language Server Protocol (LSP) which as of now is used for the official VSCode Extension but could also be used to power a plugin for your favorite IDE in the future.
Packages
This repository is a monorepo managed through Turbo, which means that multiple packages are in this same repo (packages
folder), here's a list:
@astrojs/language-server
The Astro language server, its structure is inspired by the Svelte Language Server.
astro-vscode
The official VS Code extension for Astro. This enables all of the editing features you depend on in VSCode for .astro
files
@astrojs/ts-plugin
TypeScript plugin to add support for .astro
imports in .ts
files with proper typing
Features provided
These packages together power editing functionality such as:
- Go to Definition
- Code hover hints
- Code completion
- Function signatures
- Syntax highlighting
- Code folding
- Emmet
For a full list of features, see the VS Code's extension README.
Contributing
Pull requests of any size and any skill level are welcome, no contribution is too small. Changes to the Astro Language Tools are subject to Astro Governance and should adhere to the Astro Style Guide
See CONTRIBUTING.md for instructions on how to setup your development environnement
Sponsors
You can sponsor Astro's development on Open Collective. Astro is generously supported by the following companies and individuals:
Platinum Sponsors
Gold Sponsors
|
|
Sponsors
![]() |