Skip to content

Commit

Permalink
Finish improve-documentation
Browse files Browse the repository at this point in the history
  • Loading branch information
kendyjm committed Jun 24, 2020
2 parents 65308d6 + ed2c18c commit 346b24f
Show file tree
Hide file tree
Showing 5 changed files with 43 additions and 16 deletions.
1 change: 0 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,6 @@
## Projects

[PROJECT 1 : Deploy Static Website on AWS](project1-deploy-static-website-on-aws)
Deploy a static website to AWS.
_Keywords : aws, s3, cloudfront_

[PROJECT 2 : Udagram, Your Own Instagram on AWS](project2-image-filter)
Expand Down
24 changes: 19 additions & 5 deletions course-02/exercises/udacity-c2-basic-server/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,56 +3,70 @@
This is a simple node-express server to explore and understand the Request-Response pattern.

***

## Getting Setup

### Installing project dependencies

This project uses NPM to manage software dependencies. NPM Relies on the package.json file located in the root of this repository. After cloning, open your terminal and run:

```bash
npm install
```

>_tip_: **npm i** is shorthand for **npm install**
### Installing useful tools

#### 1. [Postbird](https://github.com/paxa/postbird)

Postbird is a useful client GUI (graphical user interface) to interact with our provisioned Postgres database. We can establish a remote connection and complete actions like viewing data and changing schema (tables, columns, ect).

#### 2. [Postman](https://www.getpostman.com/downloads/)
Postman is a useful tool to issue and save requests. Postman can create GET, PUT, POST, etc. requests complete with bodies. It can also be used to test endpoints automatically. We've included a collection (`./udacity-c2-restapi.postman_collection.json `) which contains example requsts.

Postman is a useful tool to issue and save requests. Postman can create GET, PUT, POST, etc. requests complete with bodies. It can also be used to test endpoints automatically. We've included a collection (`./udacity-c2-restapi.postman_collection.json`) which contains example requsts.

***

## Running the Server Locally

To run the server locally in developer mode, open terminal and run:

```bash
npm run dev
```

Developer mode runs off the TypeScript source. Any saves will reset the server and run the latest version of the codebase.
Developer mode runs off the TypeScript source. Any saves will reset the server and run the latest version of the codebase.

***

## Important Files and Project Structure

The source code for this demo resides in the ./src directory.

### src/server.ts
The main code for this demo is located in the ./src/server.ts file. This includes

The main code for this demo is located in the ./src/server.ts file. This includes

### src/cars.ts

This is a javascript object containing a list of cars. This will be useful for providing data for our simple endpoints.

### src/unit-test-examples/

This directory contains some simple unit functions (`units.ts`) and corresponding tests using Mocha and Chai (`units.tests.ts`).

***

# Tasks

1. @TODO `./src/server.ts/`
Add an endpoint to GET a list of cars.

2. @TODO `./src/server.ts/`
2. @TODO `./src/server.ts/`
Add an endpoint to get a specific car.

3. @TODO `./src/server.ts/`
3. @TODO `./src/server.ts/`
Add an endpoint to post a new car to our list.

4. @TODO `./src/unit-test-examples/units.ts`
Expand Down
21 changes: 17 additions & 4 deletions course-02/exercises/udacity-c2-frontend/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,49 +3,62 @@
Udagram is a simple cloud application developed along side the Udacity Cloud Engineering Nanodegree. It allows users to register and log into a web client, post photos to the feed, and process photos using an image filtering microservice.

The project is split into three parts:
1. [The Simple Frontend](https://github.com/udacity/cloud-developer/tree/master/course-02/exercises/udacity-c2-frontend)
A basic Ionic client web application which consumes the RestAPI Backend.
2. [The RestAPI Backend](https://github.com/udacity/cloud-developer/tree/master/course-02/exercises/udacity-c2-restapi), a Node-Express server which can be deployed to a cloud service.
3. [The Image Filtering Microservice](https://github.com/udacity/cloud-developer/tree/master/course-02/project/image-filter-starter-code), the final project for the course. It is a Node-Express application which runs a simple script to process images.

1. [The Simple Frontend](.)
A basic Ionic client web application which consumes the RestAPI Backend.
2. [The RestAPI Backend](../udacity-c2-restapi), a Node-Express server which can be deployed to a cloud service.
3. [The Image Filtering Microservice](../../../project2-image-filter), the final project for the course. It is a Node-Express application which runs a simple script to process images.

***

## Getting Setup

> _tip_: this frontend is designed to work with [The RestAPI Backend](https://github.com/grutt/udacity-c2-restapi). It is recommended you stand up the backend first, test using Postman, and then the frontend should integrate.
### Installing Node and NPM

This project depends on Nodejs and Node Package Manager (NPM). Before continuing, you must download and install Node (NPM is included) from [https://nodejs.com/en/download](https://nodejs.org/en/download/).

### Installing Ionic Cli

The Ionic Command Line Interface is required to serve and build the frontend. Instructions for installing the CLI can be found in the [Ionic Framework Docs](https://ionicframework.com/docs/installation/cli).

### Installing project dependencies

This project uses NPM to manage software dependencies. NPM Relies on the package.json file located in the root of this repository. After cloning, open your terminal and run:

```bash
npm install
```

>_tip_: **npm i** is shorthand for **npm install**
### Configure The Backend Endpoint

Ionic uses enviornment files located in `./src/enviornments/enviornment.*.ts` to load configuration variables at runtime. By default `environment.ts` is used for development and `enviornment.prod.ts` is used for produciton. The `apiHost` variable should be set to your server url either locally or in the cloud.

***

### Running the Development Server

Ionic CLI provides an easy to use development server to run and autoreload the frontend. This allows you to make quick changes and see them in real time in your browser. To run the development server, open terminal and run:

```bash
ionic serve
```

### Building the Static Frontend Files

Ionic CLI can build the frontend into static HTML/CSS/JavaScript files. These files can be uploaded to a host to be consumed by users on the web. Build artifacts are located in `./www`. To build from source, open terminal and run:

```bash
ionic build
```

***

## @TODO

2. Tasks
i. Setup
a. Clone, set up protected branches (dev, staging, master)
Expand Down
7 changes: 4 additions & 3 deletions course-02/exercises/udacity-c2-restapi/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,11 @@
Udagram is a simple cloud application developed alongside the Udacity Cloud Engineering Nanodegree. It allows users to register and log into a web client, post photos to the feed, and process photos using an image filtering microservice.

The project is split into three parts:
1. [The Simple Frontend](https://github.com/udacity/cloud-developer/tree/master/course-02/exercises/udacity-c2-frontend)

1. [The Simple Frontend](../udacity-c2-frontend)
A basic Ionic client web application which consumes the RestAPI Backend.
2. [The RestAPI Backend](https://github.com/udacity/cloud-developer/tree/master/course-02/exercises/udacity-c2-restapi), a Node-Express server which can be deployed to a cloud service.
3. [The Image Filtering Microservice](https://github.com/udacity/cloud-developer/tree/master/course-02/project/image-filter-starter-code), the final project for the course. It is a Node-Express application which runs a simple script to process images.
2. [The RestAPI Backend](.), a Node-Express server which can be deployed to a cloud service.
3. [The Image Filtering Microservice](../../../project2-image-filter), the final project for the course. It is a Node-Express application which runs a simple script to process images.


***
Expand Down
6 changes: 3 additions & 3 deletions project2-image-filter/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,10 @@ Udagram is a simple cloud application developed alongside the Udacity Cloud Engi

The project is split into three parts:

1. [The Simple Frontend](https://github.com/udacity/cloud-developer/tree/master/course-02/exercises/udacity-c2-frontend)
1. [The Simple Frontend](../course-02/exercises/udacity-c2-frontend)
A basic Ionic client web application which consumes the RestAPI Backend. [Covered in the course]
2. [The RestAPI Backend](https://github.com/udacity/cloud-developer/tree/master/course-02/exercises/udacity-c2-restapi), a Node-Express server which can be deployed to a cloud service. [Covered in the course]
3. [The Image Filtering Microservice](https://github.com/udacity/cloud-developer/tree/master/course-02/project/image-filter-starter-code), the final project for the course. It is a Node-Express application which runs a simple script to process images. [Your assignment]
2. [The RestAPI Backend](../course-02/exercises/udacity-c2-restapi), a Node-Express server which can be deployed to a cloud service. [Covered in the course]
3. [The Image Filtering Microservice](.), the final project for the course. It is a Node-Express application which runs a simple script to process images. [Your assignment]

## Submission

Expand Down

0 comments on commit 346b24f

Please sign in to comment.