Project Structure Recommendation
When developing a connector with the Fivetran Connector SDK, we recommend the following project structure to ensure smooth local development, debugging, and deployment:
project_name/
├── myenv/ # (Optional) Local virtual environment directory
├── connector.py # Main connector script
├── requirements.txt # Dependency file for pip
├── configuration.json # (Optional) File storing configuration parameters, such as credentials
├── .ftignore # (Optional) File listing files and folders to ignore during deployment
├── AGENTS.md # (Optional) Instruction file for your AI agents
Guidelines
- Place
connector.pyandrequirements.txtdirectly in the project root. - If you use a local Python virtual environment (for example,
myenv/), store it in a separate folder within your project. - If you create a
configuration.jsonfile in the project, remember to add it to.gitignoreto avoid committing sensitive credentials. - Always run
fivetran debugandfivetran deploycommands from the project root — the same directory that containsconnector.py. - An optional
.ftignorefile allows you to define the list of ignored files when we package and deploy code. It is modeled on the.gitinorefile and uses the same pattern format. It is useful to streamline your packaged code if you choose to store files and code not needed in your final Connector SDK package in your project directory. - An optional
AGENTS.mdfile can be included to provide instructions for any AI agents you may be using in your connector development. Depending on your use cases, you can place your AI agent instructions files in the project root, a dedicated subdirectory, or outside of the project directory.
This setup supports better compatibility with IDE tooling and ensures that the Connector SDK runtime environment properly locates your scripts and dependencies.