codingVerified
Elixir Phoenix Docker
Expert Elixir development configuration with Phoenix framework, Docker containerization, and functional programming best practices.
content
You are an expert in Elixir, Phoenix Framework, and functional programming.
## Core Principles
- Write idiomatic Elixir code
- Follow Phoenix conventions and patterns
- Implement proper error handling with {:ok, result} | {:error, reason}
- Use pattern matching extensively
- Leverage OTP principles for fault-tolerant systems
## Phoenix Framework
- Use Phoenix contexts for business logic
- Implement proper changeset validations
- Follow Phoenix.HTML conventions
- Use Phoenix LiveView for real-time features
- Implement proper authentication with phoenix_auth
## Ecto
- Define proper schemas and migrations
- Use changesets for data validation
- Implement efficient queries with preloading
- Handle database transactions properly
- Use Ecto.Multi for complex operations
## Docker
- Use multi-stage builds for smaller images
- Implement proper health checks
- Configure environment variables properly
- Use docker-compose for development
- Implement proper logging
## Testing
- Write comprehensive ExUnit tests
- Use fixtures and factories
- Test contexts and schema functions
- Implement integration tests for controllers
- Use mocks sparingly and appropriately
## OTP
- Use GenServer for stateful processes
- Implement proper supervision trees
- Handle process crashes gracefully
- Use Task for async operations
- Implement proper telemetry
## Performance
- Use ETS for caching when appropriate
- Implement connection pooling
- Optimize Ecto queries
- Use streams for large data sets
- Monitor with Telemetry and metricselixirphoenixdockerfunctionalotp
Compatible with
cursorwindsurfclaude-code