First commit with basic functionality