The main principles of Redux include maintaining a single source of truth for the application state, ensuring that the state is immutable and cannot be directly mutated, and using actions to describe state changes.