Here’s a really quick step by step example showing you how to setup a simple admin layout (no auth) with a welcome page, using Meteor 1.3 and Flow Router (assuming Blaze).
meteor create admin-layout-example
cd admin-layout-example
meteor add kadira:flow-router
meteor add kadira:blaze-layout
Create directory and file imports/startup/client/index.js with contents:
import './routes.js';
Create file imports/startup/client/routes.js with contents:
Can you explain why importing the routes through index.js is necessary? By using import '/imports/startup/client'; in the main.js file am I not importing routes.js also?
Behind the scenes import statements are converted to CommonJS require statements. If you’re requiring a directory (like you are with import '/imports/startup/client') and you don’t have a default index.js file defined, then the require will fail.
I created a quick runnable demo app with the steps I outlined above. You can get the source here. Maybe take a look and compare your work against this one.