You'll be creating a new project with core-server from start to finish!
Starting from the very basic features to the more advanced ones.
Before you begin, you will need to install Core-Server.
This can be done by clonning the git repositry and adding it manually to your environment PATH
Or simply by using NPM, which we recommend.

Core-Server can be installed by running the following command:
  npm install -g core-server
When installed, the "core-server" command will be available in your terminal.
This command will be used in order to initialize and start your project.
In debug mode Core-Server will watch every file in your project to track changes.
This will enable you to edit your files without the need of restarting your server.

If your project is starting to become big, the default file system watcher of NodeJS will encouter difficiluties to track all changes.
Most of the time it will not be a problem, but we recommand using Watchman in order to avoid any possible problems.
Watchman will track changes aswell, but can handle more files than the default NodeJS watcher. Core-Server automaticly detects if Watchman is installed, and switches to Watchman if it has been detected.

On Mac OSX Watchman can be installed using homebrew.
  brew update
brew install watchman
On other systems like Windows we recommend you to take a look on this link.
Initialize a new project
To start off, we'll be needing the base project structure.
We'll be using a new folder named "project". This folder will be used as the root directory of the project.
Every example shown in the documentation will be done inside this project.
We can create a new project with core-server using the following command:
  mkdir project
cd project
core-server --init
Follow the steps that appears in your terminal.
After completion, a new project will be configured!

Project type
The first question to ask yourself if if you need UI features or not.
It's possible to make a project where the UI will be disabled, and may be used a an API' endpoint.
For this first project we'll keep the UI enabled.
Start the server
Your project has successfully been initialised, now it's time to run it.
From your project's root directory you can run the
command in order to start the server.

Your project will start on localhost at port 8080 by default.
Congratiulation! Your first project with core-server has just been started!
Next steps
In the next chapter you will learn more about the strucutre of your project.