App structure
This reference outlines the standardized folder structure that each Atlan application follows to maintain consistency and predictability across all applications.
Folder structure
Each application follows this standardized folder structure to keep things modular and scalable:
📦 your_application/
├── 📄 main.py # Application entry point
├── 📄 README.md # Application documentation
├── 📄 .env.example # Environment variables template
├── 📁 install/ # Docker image build
├── 📁 app/ # Core application logic
│ ├── 📄 activity.py # Activity implementations
│ ├── 📄 workflows.py # Workflow definitions
│ ├── 📄 client.py # External client implementations
│ ├── 📄 handler.py # Request handlers and API endpoints (optional)
│ ├── 📄 models.py # Data models and schemas (optional)
│ └── 📄 transformer.py # Data transformation logic (optional)
└── 📁 frontend/ # Web interface
Required | Component | Description |
---|---|---|
✅ | main.py | Application entry point that initializes and runs the app |
✅ | README.md | Application documentation with setup and usage instructions |
✅ | .env.example | Template for environment variables configuration |
✅ | install/ | Docker image build configuration and scripts |
✅ | app/ | Core application logic and business rules |
✅ | app/activities.py | Activity implementations for workflow steps |
✅ | app/workflows.py | Workflow definitions and orchestration |
✅ | app/client.py | External client implementations for APIs |
❌ | app/handler.py | Request handlers and API endpoints for web interfaces |
❌ | app/models.py | Data models and schemas for your application |
❌ | app/transformer.py | Data transformation logic and utilities |
❌ | frontend/ | Web interface components and assets |
Examples
📁 MySQL extraction application structure
📦 mysql/
├── 📄 main.py
├── 📄 README.md
├── 📄 pyproject.toml
├── 📁 app/
│ ├── 📁 sql/
│ ├── 📄 activities.py
│ ├── 📄 clients.py
│ ├── 📄 transformer.py
│ └── 📄 workflows.py
├── 📁 components/
├── 📁 frontend/
├── 📁 deploy/
├── 📁 local/
└── 📁 models/
📁 Utilities example workflows_observability
📦 workflows_observability/
├── 📁 app/
│ ├── 📄 activities.py
│ ├── 📄 helpers.py
│ └── 📄 workflow.py
├── 📁 frontend/
│ ├── 📁 static/
│ └── 📁 templates/
├── 📁 local/
├── 📁 deploy/
├── 📄 main.py
├── 📄 pyproject.toml
└── 📄 README.md