{"id":27330,"library":"rapid-router","title":"Rapid Router","description":"A Python web framework for building APIs with automatic OpenAPI (Swagger/ReDoc) documentation, request validation, and dependency injection. Current version 7.7.3 with active development.","status":"active","version":"7.7.3","language":"python","source_language":"en","source_url":"https://github.com/wiseaidev/rapid-router","tags":["ASGI","web framework","OpenAPI","validation","Python"],"install":[{"cmd":"pip install rapid-router","lang":"bash","label":"Install latest version"},{"cmd":"pip install uvicorn","lang":"bash","label":"ASGI server for production"}],"dependencies":[{"reason":"ASGI server required to run the app","package":"uvicorn","optional":false},{"reason":"Data validation and settings management","package":"pydantic>=2.0.0","optional":false}],"imports":[{"note":"Package uses underscore; dash in PyPI name, underscore in import","wrong":"from rapidrouter import RapidRouter","symbol":"RapidRouter","correct":"from rapid_router import RapidRouter"},{"note":"Route is top-level in recent versions","wrong":"from rapid_router.routes import Route","symbol":"Route","correct":"from rapid_router import Route"}],"quickstart":{"code":"from rapid_router import RapidRouter\n\napp = RapidRouter()\n\n@app.get(\"/\")\ndef home():\n    return {\"message\": \"Hello, World!\"}\n\nif __name__ == \"__main__\":\n    import uvicorn\n    uvicorn.run(app, host=\"0.0.0.0\", port=8000)","lang":"python","description":"Create a simple API with one GET endpoint."},"warnings":[{"fix":"Use `from rapid_router import RapidRouter` and `Route` directly.","message":"In v7, the import changed from `from rapid_router import RapidRouter` to `from rapid_router import RapidRouter` (consistent), but the internal structure was rewritten. Old imports like `from rapid_router.routes import Router` no longer work.","severity":"breaking","affected_versions":">=7.0.0"},{"fix":"Upgrade Python to 3.8 or higher.","message":"v7 removed support for Python 3.7 and below. Requires Python 3.8+.","severity":"breaking","affected_versions":">=7.0.0"},{"fix":"Use Pydantic models instead of raw JSON schema dicts.","message":"The `json` parameter in route decorators is deprecated in favor of Pydantic models for request body validation.","severity":"deprecated","affected_versions":">=6.0.0"},{"fix":"Wrap app in a lifespan-capable framework like Starlette, or use `app.add_middleware` with custom lifespan.","message":"ASGI lifespan events (startup/shutdown) are not supported by default. Use a middleware or external library.","severity":"gotcha","affected_versions":"all"}],"env_vars":null,"last_verified":"2026-04-27T00:00:00.000Z","next_check":"2026-07-26T00:00:00.000Z","problems":[{"fix":"Replace `from rapid_router.routes import Route` with `from rapid_router import Route`.","cause":"In v7, route classes were moved to the top-level package.","error":"ModuleNotFoundError: No module named 'rapid_router.routes'"},{"fix":"Use a server like Uvicorn with `lifespan=\"on\"` and wrap the app with a lifespan-capable middleware.","cause":"RapidRouter does not natively handle ASGI lifespan protocol.","error":"RuntimeError: Lifespan not supported"},{"fix":"Install package with `pip install rapid-router` but import as `from rapid_router import RapidRouter`.","cause":"Incorrect package name used in code import.","error":"pip install rapid-router"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}