fastapi-fullstack 0.1.15__tar.gz → 0.1.16__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/PKG-INFO +1 -1
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/fastapi_gen/prompts.py +24 -13
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/pyproject.toml +1 -1
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/.gitignore +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/LICENSE +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/README.md +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/fastapi_gen/__init__.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/fastapi_gen/cli.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/fastapi_gen/config.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/fastapi_gen/generator.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/VARIABLES.md +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/cookiecutter.json +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/hooks/post_gen_project.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/.env.prod.example +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/.github/workflows/ci.yml +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/.gitignore +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/.gitlab-ci.yml +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/AGENTS.md +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/CLAUDE.md +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/Makefile +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/README.md +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/.dockerignore +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/.env.example +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/.pre-commit-config.yaml +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/Dockerfile +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/alembic/env.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/alembic/script.py.mako +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/alembic/versions/.gitkeep +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/alembic.ini +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/__init__.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/admin.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/agents/__init__.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/agents/assistant.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/agents/crewai_assistant.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/agents/deepagents_assistant.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/agents/langchain_assistant.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/agents/langgraph_assistant.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/agents/prompts.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/agents/tools/__init__.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/agents/tools/datetime_tool.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/api/__init__.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/api/deps.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/api/exception_handlers.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/api/router.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/api/routes/__init__.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/api/routes/v1/__init__.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/api/routes/v1/agent.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/api/routes/v1/auth.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/api/routes/v1/conversations.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/api/routes/v1/health.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/api/routes/v1/items.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/api/routes/v1/oauth.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/api/routes/v1/sessions.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/api/routes/v1/users.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/api/routes/v1/webhooks.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/api/routes/v1/ws.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/api/versioning.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/clients/__init__.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/clients/redis.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/commands/__init__.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/commands/cleanup.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/commands/example.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/commands/seed.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/core/__init__.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/core/cache.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/core/config.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/core/csrf.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/core/exceptions.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/core/logfire_setup.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/core/middleware.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/core/oauth.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/core/rate_limit.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/core/sanitize.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/core/security.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/db/__init__.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/db/base.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/db/models/__init__.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/db/models/conversation.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/db/models/item.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/db/models/session.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/db/models/user.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/db/models/webhook.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/db/session.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/main.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/pipelines/__init__.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/pipelines/base.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/repositories/__init__.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/repositories/base.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/repositories/conversation.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/repositories/item.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/repositories/session.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/repositories/user.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/repositories/webhook.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/schemas/__init__.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/schemas/base.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/schemas/conversation.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/schemas/item.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/schemas/session.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/schemas/token.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/schemas/user.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/schemas/webhook.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/services/__init__.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/services/conversation.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/services/item.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/services/session.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/services/user.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/services/webhook.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/worker/__init__.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/worker/arq_app.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/worker/celery_app.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/worker/taskiq_app.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/worker/tasks/__init__.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/worker/tasks/examples.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/worker/tasks/schedules.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/app/worker/tasks/taskiq_examples.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/cli/__init__.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/cli/commands.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/pyproject.toml +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/scripts/.gitkeep +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/tests/__init__.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/tests/api/__init__.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/tests/api/test_auth.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/tests/api/test_exceptions.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/tests/api/test_health.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/tests/api/test_items.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/tests/api/test_metrics.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/tests/api/test_users.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/tests/conftest.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/tests/test_admin.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/tests/test_agents.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/tests/test_clients.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/tests/test_commands.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/tests/test_core.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/tests/test_pipelines.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/tests/test_repositories.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/tests/test_security.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/tests/test_services.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/backend/tests/test_worker.py +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/docker-compose.dev.yml +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/docker-compose.frontend.yml +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/docker-compose.prod.yml +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/docker-compose.yml +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/docs/adding_features.md +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/docs/architecture.md +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/docs/patterns.md +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/docs/testing.md +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/.dockerignore +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/.env.example +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/.gitignore +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/.prettierignore +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/.prettierrc +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/Dockerfile +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/README.md +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/e2e/auth.setup.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/e2e/auth.spec.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/e2e/chat.spec.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/e2e/home.spec.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/instrumentation.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/messages/en.json +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/messages/pl.json +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/next.config.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/package.json +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/playwright.config.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/postcss.config.mjs +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/app/[locale]/(auth)/layout.tsx +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/app/[locale]/(auth)/login/page.tsx +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/app/[locale]/(auth)/register/page.tsx +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/app/[locale]/(dashboard)/chat/page.tsx +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/app/[locale]/(dashboard)/dashboard/page.tsx +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/app/[locale]/(dashboard)/layout.tsx +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/app/[locale]/(dashboard)/profile/page.tsx +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/app/[locale]/auth/callback/page.tsx +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/app/[locale]/layout.tsx +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/app/[locale]/page.tsx +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/app/api/auth/login/route.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/app/api/auth/logout/route.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/app/api/auth/me/route.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/app/api/auth/oauth-callback/route.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/app/api/auth/refresh/route.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/app/api/auth/register/route.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/app/api/conversations/[id]/messages/route.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/app/api/conversations/[id]/route.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/app/api/conversations/route.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/app/api/health/route.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/app/globals.css +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/app/layout.tsx +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/app/providers.tsx +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/components/auth/index.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/components/auth/login-form.tsx +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/components/auth/register-form.tsx +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/components/chat/chat-container.tsx +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/components/chat/chat-input.tsx +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/components/chat/conversation-sidebar.tsx +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/components/chat/copy-button.tsx +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/components/chat/index.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/components/chat/local-conversation-sidebar.tsx +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/components/chat/markdown-content.tsx +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/components/chat/message-item.tsx +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/components/chat/message-list.tsx +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/components/chat/tool-approval-dialog.tsx +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/components/chat/tool-call-card.tsx +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/components/icons/google-icon.tsx +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/components/icons/index.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/components/language-switcher.tsx +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/components/layout/header.tsx +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/components/layout/index.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/components/layout/sidebar.tsx +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/components/theme/index.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/components/theme/theme-provider.tsx +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/components/theme/theme-toggle.tsx +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/components/ui/badge.tsx +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/components/ui/button.test.tsx +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/components/ui/button.tsx +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/components/ui/card.tsx +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/components/ui/index.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/components/ui/input.tsx +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/components/ui/label.tsx +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/components/ui/sheet.tsx +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/hooks/index.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/hooks/use-auth.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/hooks/use-chat.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/hooks/use-conversations.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/hooks/use-local-chat.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/hooks/use-websocket.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/i18n.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/lib/api-client.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/lib/constants.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/lib/server-api.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/lib/utils.test.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/lib/utils.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/middleware.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/stores/auth-store.test.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/stores/auth-store.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/stores/chat-sidebar-store.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/stores/chat-store.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/stores/conversation-store.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/stores/index.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/stores/local-chat-store.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/stores/sidebar-store.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/stores/theme-store.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/types/api.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/types/auth.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/types/chat.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/types/conversation.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/src/types/index.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/tsconfig.json +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/vitest.config.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/frontend/vitest.setup.ts +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/kubernetes/configmap.yaml +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/kubernetes/deployment.yaml +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/kubernetes/ingress.yaml +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/kubernetes/kustomization.yaml +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/kubernetes/namespace.yaml +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/kubernetes/secret.yaml +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/kubernetes/service.yaml +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/nginx/nginx.conf +0 -0
- {fastapi_fullstack-0.1.15 → fastapi_fullstack-0.1.16}/template/{{cookiecutter.project_slug}}/nginx/ssl/.gitkeep +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: fastapi-fullstack
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.16
|
|
4
4
|
Summary: Full-stack FastAPI + Next.js template generator with PydanticAI/LangChain agents, WebSocket streaming, 20+ enterprise integrations, and Logfire/LangSmith observability. Ship AI apps fast. CLI tool to generate production-ready FastAPI + Next.js projects with AI agents, auth, and observability.
|
|
5
5
|
Project-URL: Homepage, https://github.com/vstorm-co/full-stack-fastapi-nextjs-llm-template
|
|
6
6
|
Project-URL: Documentation, https://github.com/vstorm-co/full-stack-fastapi-nextjs-llm-template#readme
|
|
@@ -226,8 +226,12 @@ def prompt_oauth() -> OAuthProvider:
|
|
|
226
226
|
)
|
|
227
227
|
|
|
228
228
|
|
|
229
|
-
def prompt_logfire() -> tuple[bool, LogfireFeatures]:
|
|
230
|
-
"""Prompt for Logfire configuration.
|
|
229
|
+
def prompt_logfire(background_tasks: BackgroundTaskType) -> tuple[bool, LogfireFeatures]:
|
|
230
|
+
"""Prompt for Logfire configuration.
|
|
231
|
+
|
|
232
|
+
Args:
|
|
233
|
+
background_tasks: Selected background task system (affects which options are shown).
|
|
234
|
+
"""
|
|
231
235
|
console.print()
|
|
232
236
|
console.print("[bold cyan]Observability (Logfire)[/]")
|
|
233
237
|
console.print()
|
|
@@ -242,16 +246,23 @@ def prompt_logfire() -> tuple[bool, LogfireFeatures]:
|
|
|
242
246
|
if not enable_logfire:
|
|
243
247
|
return False, LogfireFeatures()
|
|
244
248
|
|
|
249
|
+
# Build choices dynamically - only show Celery option when Celery is selected
|
|
250
|
+
choices = [
|
|
251
|
+
questionary.Choice("FastAPI instrumentation", value="fastapi", checked=True),
|
|
252
|
+
questionary.Choice("Database instrumentation", value="database", checked=True),
|
|
253
|
+
questionary.Choice("Redis instrumentation", value="redis", checked=False),
|
|
254
|
+
questionary.Choice("HTTPX instrumentation", value="httpx", checked=False),
|
|
255
|
+
]
|
|
256
|
+
|
|
257
|
+
if background_tasks == BackgroundTaskType.CELERY:
|
|
258
|
+
choices.insert(
|
|
259
|
+
3, questionary.Choice("Celery instrumentation", value="celery", checked=False)
|
|
260
|
+
)
|
|
261
|
+
|
|
245
262
|
features = _check_cancelled(
|
|
246
263
|
questionary.checkbox(
|
|
247
264
|
"Logfire features:",
|
|
248
|
-
choices=
|
|
249
|
-
questionary.Choice("FastAPI instrumentation", value="fastapi", checked=True),
|
|
250
|
-
questionary.Choice("Database instrumentation", value="database", checked=True),
|
|
251
|
-
questionary.Choice("Redis instrumentation", value="redis", checked=False),
|
|
252
|
-
questionary.Choice("Celery/Taskiq instrumentation", value="celery", checked=False),
|
|
253
|
-
questionary.Choice("HTTPX instrumentation", value="httpx", checked=False),
|
|
254
|
-
],
|
|
265
|
+
choices=choices,
|
|
255
266
|
).ask()
|
|
256
267
|
)
|
|
257
268
|
|
|
@@ -834,12 +845,12 @@ def run_interactive_prompts() -> ProjectConfig:
|
|
|
834
845
|
).ask()
|
|
835
846
|
)
|
|
836
847
|
|
|
837
|
-
# Logfire
|
|
838
|
-
enable_logfire, logfire_features = prompt_logfire()
|
|
839
|
-
|
|
840
|
-
# Background tasks
|
|
848
|
+
# Background tasks (before Logfire so we can conditionally show Celery instrumentation)
|
|
841
849
|
background_tasks = prompt_background_tasks()
|
|
842
850
|
|
|
851
|
+
# Logfire
|
|
852
|
+
enable_logfire, logfire_features = prompt_logfire(background_tasks)
|
|
853
|
+
|
|
843
854
|
# Integrations (pass context for dynamic option filtering)
|
|
844
855
|
integrations = prompt_integrations(database=database, orm_type=orm_type)
|
|
845
856
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "fastapi-fullstack"
|
|
3
|
-
version = "0.1.
|
|
3
|
+
version = "0.1.16"
|
|
4
4
|
description = "Full-stack FastAPI + Next.js template generator with PydanticAI/LangChain agents, WebSocket streaming, 20+ enterprise integrations, and Logfire/LangSmith observability. Ship AI apps fast. CLI tool to generate production-ready FastAPI + Next.js projects with AI agents, auth, and observability."
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
requires-python = ">=3.11"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|