Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/admwx7/portfolio

A portfolio website to house a blog and information about my current and past projects
https://github.com/admwx7/portfolio

codeship firebase hacktoberfest portfolio

Last synced: 21 days ago
JSON representation

A portfolio website to house a blog and information about my current and past projects

Awesome Lists containing this project

README

        

[ ![Codeship Status for admwx7/portfolio](https://app.codeship.com/projects/05e08dd0-d602-0135-6dca-1afc2eb9ace9/status?branch=master)](https://app.codeship.com/projects/263150)

# Getting Started

## Project Setup
* Requires a firebase project setup for functions and hosting
* Populate the appropriate keys in the FirebaseService.ts

## Local Dev - UI
* Install required globals `npm i -g yarn`
* Install local deps `yarn install`
* Start the dev server `yarn start`
* To lint your code `yarn run lint`
* To autofix errors `yarn run lint:fix`

## Local Dev - Functions
* Install local deps `cd functions && npm install`
* Start the functions `npm start`

## Local Deployments
* Install required globals `npm i -g firebase-tools`
* Login to your firebase account `firebase login`
* This account will require deployment accesss for hosting / functions in firebase
* Run deployment script `yarn run deploy`
* `yarn run deploy:hosting` will deploy just the UI
* `cd functions && npm run deploy` will deploy just the Functions

## CI Pipeline
* Relies on Codeship which contains the credentials for connecting to firebase
* When a new refresh token is needed, update the FIREBASE_TOKEN environment variable with the token generated by `firebasse login:ci`

### Test pipeline
The following commands are run for CI phase "setup"
```bash
npm i -g yarn
yarn install
```

The following commands are run for the CI phase "test pipelines"
```bash
yarn run lint
```

### Deploy pipeline
The following commands are run for the CI phase "deploy"
```bash
cd functions
npm i
cd ..
npm i -g firebase-tools
yarn run deploy
```

### Required Environment Variables
* FIREBASE_TOKEN - required for firebase-tools