VS Code extension for FastHTTP — scaffold projects, explore routes, and catch errors directly in the editor.
FastHTTP: https://github.com/ndugram/fasthttp
Source Code: https://github.com/ndugram/fasthttp-extension
FastHTTP Extension brings the full FastHTTP development experience into VS Code — project scaffolding, route explorer, inline diagnostics, and CodeLens actions.
Key features:
- Create Project — scaffold a ready-to-run FastHTTP project from the Command Palette in seconds.
- Route Explorer — sidebar panel showing all
@app.get/post/...routes across your workspace, grouped by file. Click any route to jump to its definition. - CodeLens —
▶ RunandCopy URLactions appear above every route decorator. - Diagnostics — inline errors and warnings for missing
async def, missing-> ReturnType, and missingresp: Responseparameter. - Smart detection — only activates on files that actually instantiate
FastHTTP()orRouter(). No false positives from FastAPI or other frameworks.
- VS Code
^1.85.0 - fasthttp-client installed in your Python environment to run generated projects.
Install from the VS Code Marketplace:
- Open VS Code
- Press
Ctrl+P(orCmd+Pon macOS) - Run
ext install ndugram.fasthttp-extension
Or search FastHTTP in the Extensions panel.
- Open the Command Palette (
Ctrl+Shift+P/Cmd+Shift+P) - Type
FastHTTP: Create Project - Enter a project name
- Select a folder where the project will be created
- Choose to open the project in a new or current window
my-project/
├── main.py
├── requirements.txt
└── pyproject.toml
from fasthttp import FastHTTP
from fasthttp.response import Response
app = FastHTTP()
@app.get(url="https://httpbin.org/get")
async def get_data(resp: Response) -> dict:
return resp.json()
if __name__ == "__main__":
app.run()Open the FastHTTP panel in the activity bar to see all routes in your workspace:
FASTHTTP ROUTES
└── main.py 3 routes
├── GET https://httpbin.org/get get_data()
├── POST https://httpbin.org/post post_data()
└── DELETE https://httpbin.org/delete delete_data()
Click any route → jumps to the decorator in the file. Use the ⟳ button to refresh manually.
The extension highlights handler errors inline:
| Problem | Severity |
|---|---|
def instead of async def |
|
Missing -> ReturnType annotation |
❌ Error |
Missing resp: Response parameter |
$ pip install fasthttp-client
$ python3 main.pyYou will see output like:
16:09:18.955 │ INFO │ fasthttp │ ✔ FastHTTP started
16:09:19.519 │ INFO │ fasthttp │ ✔ GET https://httpbin.org/get [200] 458.26ms
16:09:20.037 │ INFO │ fasthttp │ ✔ Done in 1.08s
Contributions are welcome! Please read CONTRIBUTING.md before opening a pull request.
Found a security issue? See the Security Policy.
This project is licensed under the terms of the MIT license.

