Bloc Frontend Project Starter

A starter application for student projects in Bloc’s Frontend Web Development Course.

Pull Down the Code

Start by cloning the repository:

$ git clone https://github.com/Bloc/bloc-frontend-project-starter.git <your-frontend-project-name>

Reset Git

This will be your personal project. So all of the past commit history that we used to build this starter app aren’t needed. Also you will want to be able to push/pull code from your personal remote (Github) repository and NOT Bloc’s remote (Github) repository.

Remove the existing local Git repository:

$ rm -r -f .git

Initialize a new Git repository, add all of these existing files, and commit them:

$ git init
$ git add .
$ git commit -m "initial commit"

Go to Github and create a new repository. Add that new repository as the proper remote. Then push your initial commit.

$ git remote add origin <URL TO NEW GITHUB REPO>
$ git push origin master

Configuration

The project uses Node to run a JS server in development. This will be important when we want to use urls /album or /collection instead of the basic album.html or collection.html. It may help to review our resource on NPM and package.json files.

Install the project dependencies by running:

$ npm install

Run the Application

Run the application server:

$ npm start

The server will start up. To stop the server, press cntrl + c.

Use in Brackets Live Preview

To use the application with the Live Preview functionality of the Brackets text editor, go to File > Project Settings and add http://localhost:3000 to the Base URL field.

Screenshot of project settings URL in Brackets

The text in the application will not update on every keystroke, but changes will automatically push when you save the file.

Directory Structure

├── LICENSE
├── README.md
├── app
│   ├── assets
│   │   └── images
│   │       └── bloc-logo-white.png
│   ├── pages
│   │   └── index.html
│   ├── scripts
│   │   └── app.js
│   ├── styles
│   │   └── style.css
│   └── templates
│       └── home.html
├── package.json
└── server.js

Assets/Images

Add images to the app/assets/images directory. To reference images in HTML, use the path /assets/images/<image file name>.jpg. For example, to include the image called bloc-white-logo.png, the path for the src attribute in the HTML would be:

<img src="/assets/images/bloc-white-logo.png">

Note: A sample image has been added to app/images. To remove the image from the application, run the following command from the root of repo:

$ rm -f app/assets/images/bloc-white-logo.png

To reference any other assets, like the music in Bloc Jams, use the path assets/<asset-type>/<asset-file-name>.

Difference between Pages and Templates

The templates directory should hold any HTML files used as templates in Angular states configured by UI Router. All other HTML files belong in the pages directory.