NOTE: Plugin is a WIP, nothing useful can be done with it yet.
The below content is a nice to have that have not been implemented yet.
- Autogenerated thin-wrappers around most AWS CLI services (CloudWatch, DynamoDB, EC2, Lambda, Logs, S3, SNS, SQS, …).
- Pre-packaged interactive “workflows” for the most common tasks:
- CloudWatch Logs: browse groups/streams, live-tail, apply filters, open AWS-Console link.
- DynamoDB: quick table scan/get-item helpers.
- S3: bucket/object browser and object viewer.
- Lua utilities that make it trivial to execute any AWS command from Neovim and capture the structured JSON response.
- Batteries-included test-suite (Busted) and helper scripts for localstack-based testing.
Using lazy.nvim:
{
"your-name/nvim-aws",
dependencies = { "nvim-lua/plenary.nvim" },
config = function()
require("nvim-aws").setup()
end,
}
(The plugin works out-of-the-box with the AWS environment variables in your shell.
The block below shows the optional explicit setup call.)
require('nvim-aws').setup({
aws = {
aws_endpoint_url = 'http://localhost:4566', -- e.g. localstack
region = 'us-east-1',
profile = 'default',
},
})
:AWSLogs
– start CloudWatch Logs workflow
:AWSDynamoDB
– open DynamoDB workflow
:AWSS3
– open S3 workflow
Run :help nvim-aws
for the complete command list.
The plugin includes auto-generated thin wrappers around AWS CLI services. To regenerate these wrappers:
-
Set up Python virtual environment:
cd codegen python3 -m venv venv source venv/bin/activate pip install -e .
-
Run the code generation script:
python src/extract_all_services_cli.py
This will regenerate all Lua wrappers in lua/nvim-aws/autogen_wrappers/
and their corresponding tests in lua/spec/nvim-aws/autogen_wrappers/
.
Requirements: Python 3.13+, AWS CLI installed and configured
Pull requests and issues are welcome.
Run make test
(requires docker & localstack) before opening a PR.
Nvim plugin created to interact with aws services.