added middleware, added template context, added signals, added command