Для особливо складних завдань з кодування ви можете спробувати slate