Official AvenueCDC repo.
For Mac/Linux:
brew install uvOR
curl -LsSf https://astral.sh/uv/install.sh | shFor Windows:
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"OR
winget install --id=astral-sh.uv -eThis creates .venv and installs everything from pyproject.toml.
uv syncTo add a package, use uv add <package> (or uv add --dev <package>), not pip install, and commit the updated pyproject.toml and uv.lock.
Copy the env template and fill in the values:
cp .env.example .envRun the server (no need to activate the virtual environment, uv run handles it):
uv run uvicorn main:app --reloadavenuecdc/
├── content/ # intake scripts, chatbot q&a scripts
└── call_agent/
└── chatbot/
├── app/
└── api/ # routes & webhooks (AI Call Agent)
└── chat/ # single routes & webhook (chatbot)
└── intake/ # fastapi endpoints
└── reports/ # jinja report/package building
└── tests/
├── project/
└── design.md # project architecture
├── db/ # database updates, seeding
├── main.py
├── .env
├── .env.example
├── .gitignore
├── pyproject.toml
├── uv.lock
└── README.md
Create a new branch each time you start working on a NEW feature.
Branch naming scheme:
voice/<feature> or chat/<feature> based on what you're working on.
git pull
git switch -c <new branch name>
Do NOT push to the main branch. Only focus on your feature branch.
git add <your files> (no env!)
git commit -m <message>
git push -u origin <your branch name>
Once you have completed working on your feature branch, raise a PR for team leads to review. Add uma-menon and mertyercel as reviewers.
- PR Title: Add Notion Ticket to the title alongside a short description
- Features added
- Dependencies added
- High-level changes per file
- Concerns or potential conflicts
- Leave inline comments everywhere
- Documentation for all methods (purpose, parameters, retvals)
To learn more about our techstack, please make use of the following:
- Twilio Docs
- ElevenLabs Docs
- FastAPI Docs
- Python Docs
- Supabase Docs
- Salesforce Docs
- Docusign Docs
- Jinja Docs
- Next.js Docs
- Learn Next.js
For the application to work, please have the same variables as .env.example in your .env file.