use flask-like directory structure