Creating our first app
To create our first app, we open the terminal, go to the folder where we want to create our new project, and enter the following commands:
$ cd my/developer/folder $ meteor create my-meteor-blog
Meteor will now create a folder named my-meteor-blog
. The HTML, CSS, and JavaScript files that Meteor created for us inside this folder are already a fully working Meteor app. To see it in action, run the following commands:
$ cd my-meteor-blog $ meteor
Meteor will now start a local server for us on port 3000
. Now, we can open our web browser and navigate to http://localhost:3000
. We will see the app running.
This app doesn't do much, except showing a simple reactive example. If you click on the Click Me button, it will increase the counter:
For later examples, we will need Google Chrome's developer tools. To open the console, we can press Alt + command + I on Mac OS X or click on the menu button on the upper-right corner of Chrome, select More tools, and then Developer tools.
The Developer tools allow us to inspect the DOM and CSS of our website, as well as having a console where we can interact with our website's JavaScript.
Creating a good folder structure
For this book, we will build our own app from scratch. This also means we have to set up a sustainable folder structure, which helps us to keep our code organized.
With Meteor, we are very flexible concerning our folder structure. This means we can put our files wherever we want, as long as they are inside the app's folder. Meteor treats specific folders differently, allowing us to expose files only on the client, the server, or both. We will take a look at those specific folders later.
But, first let's get our hands dirty by deleting all preadd files in our newly created application folder and creating the following folder structure:
- my-meteor-blog - server - client - styles - templates
Preadd style files
To fully focus on the Meteor code but still have a pretty-looking blog, I strongly recommend to download the code that accompanies this chapter from the book's web page at http://packtpub.com/books/content/support/17713. They will contain already two drop-in-place style files (lesshat.import.less
and styles.less
), which will let your example blog look pretty in the upcoming chapters.
You can also download these files directly from GitHub at https://github.com/frozeman/book-building-single-page-web-apps-with-meteor/tree/chapter1/my-meteor-blog/client/styles and copy them to the my-meteor-blog/client/styles
folder manually.
Next, we need to add some basic packages so that we can start building our app.