Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/orizens/echoes-player

Echoes Player: the missing Media Player experience for Youtube - Built with Angular (9), ngrx (9), Angular CLI, Boostrap (SASS), Youtube api
https://github.com/orizens/echoes-player

angular angular-cli angular-example angular-example-app bootstrap ngrx ngrx-example redux sass typescript

Last synced: 7 days ago
JSON representation

Echoes Player: the missing Media Player experience for Youtube - Built with Angular (9), ngrx (9), Angular CLI, Boostrap (SASS), Youtube api

Awesome Lists containing this project

README

        

[![Build Status](https://travis-ci.org/orizens/echoes-player.svg?branch=master)](https://travis-ci.org/orizens/echoes-player) [![Netlify Status](https://api.netlify.com/api/v1/badges/616838a7-249c-4ec3-b070-9ee35146a7e2/deploy-status)](https://app.netlify.com/sites/echoesplayer/deploys) [![Code Climate](https://codeclimate.com/github/orizens/echoes-player/badges/gpa.svg)](https://codeclimate.com/github/orizens/echoes-player)

## [Join Echoes Slack Channel](https://join.slack.com/t/echoesplayer/shared_invite/enQtMzcwMDI4OTI3MjAzLTljZDI3YTA2OGY2ZWY1NTg2M2RmN2UyZGIxOTI4Y2IwMGI4Mzg5MWFlZTZhYTQzZWI5NDVjMGE3ZTQ5OTJjNDA)

# Echoes Player - Angular Version (2nd Generation)

Echoes is a great youtube player developed by [Oren Farhi](http://orizens.com).
It's fun & easy to listen or watch videos from youtube with Echoes.
What if youtube was designed to be used as music player?
This repository is an implementation of Echoes Player with Angular (2nd genration)- It's still a work in progress aimed at learning and experimenting Angular (2nd generation).

Echoes Player is also available as a [Chrome Application](https://chrome.google.com/webstore/detail/echoes-player/aaenpaopfebcmdaegggjbkhaedlbbkde)

It can be regarded as the Media Player experience for youtube listening pleasure.



Webpack, Angular, ngrx, bootstrap

## Angular Consulting Services at Orizens

I'm a Senior Javascript Engineer & A Front End Consultant.
My services include:

- consulting to companies and startups on how to approach code in their projects and keep it maintainable.
- I provide project bootstrapping and development - while afterwards, I integrate it on site and guide the team on it.

[Contact Me Here](http://orizens.com/contact)


Webpack and Angular

# Tech Stack

## Included @ngrx solutions:

- [ngrx/store](https://github.com/ngrx/platform/blob/master/docs/store/README.md) - State Management a la "[Redux](https://github.com/reactjs/redux)" based on RxJs
- [ngrx/effects](https://github.com/ngrx/platform/blob/master/docs/effects/README.md) - Side Effects layer for ngrx/store
- ~[ngrx/router-store](https://github.com/ngrx/platform/blob/master/docs/router-store/README.md) - Bindings to connect the Angular Router to @ngrx/store~
- [ngrx-store-localstorage](https://github.com/btroncone/ngrx-store-localstorage) - local sotrage support for ngrx/store
- [ngrx/store-devtools](https://github.com/ngrx/platform/blob/master/docs/store-devtools/README.md) - a connector to [redux devtool](https://chrome.google.com/webstore/detail/redux-devtools/lmhkpmbekcpmknklioeibfkpmmfibljd?hl=en-US) for chrome

## Included Technologies & Libraries

- [Angular](http://angular.io)
- [Angular CLI](https://cli.angular.io/)
- [@ngrx Platform](https://github.com/ngrx/platform)
- Bootstrap v3.x (SASS, selected modules)
- Typescript (latest)
- ECMAscript latest

# EchoesPlayer

This project was generated with [Angular CLI](https://github.com/angular/angular-cli)

## Development server

Run `npm start` for a dev server. Navigate to `http://localhost:4200/`. The app will automatically reload if you change any of the source files.

## Code scaffolding

Run `ng generate component component-name` to generate a new component. You can also use `ng generate directive/pipe/service/class/module`.

## Build

Run `npm run build` to build the project. The build artifacts will be stored in the `dist/` directory. Use the `-prod` flag for a production build.

### Build for Production

Run `npm run build:prod` to build the project minified for production with AOT.

## Configure api keys

Echoes use environment variables to integrate Google Analytics, youtube data api key and youtube client id for authorization.
These defiend as template variables, and are replaced after a successfull build with build-env.js.

### Youtube Keys

Generate your own keys via [google's console](https://console.cloud.google.com/apis/credentials)
Required Keys are:
`API Key`
`OAuth client ID`

### Analytics Key (Optional)

The key is the project ID usually can be retreived from the analytics Admin interface. it exist as part of the "script" to paste in your html file.

## Running unit tests

Run `npm test` to execute the unit tests via [Karma](https://karma-runner.github.io).
Run `npm run test:ci` to execute the unit tests only **Once**

## Running end-to-end tests

Run `npm run e2e` to execute the end-to-end tests via [Protractor](http://www.protractortest.org/).
Before running the tests make sure you are serving the app via `ng serve`.

## Further help

To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI README](https://github.com/angular/angular-cli/blob/master/README.md).

# Bundle analyze explorer

[look at issue](https://github.com/angular/angular-cli/issues/4172)

1. make sure `npm i source-map-explorer -g`
1. `ng build --prod --aot --sm` (the sourcemap is for later steps)
1. `cd dist && source-map-explorer A-FILE-WITH-HASH.js`