Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/avatsaev/angular-ngrx-socket-frontend

Angular Ngrx Socket.IO Example
https://github.com/avatsaev/angular-ngrx-socket-frontend

angular ngrx ngrx-effects ngrx-store redux socket socketio

Last synced: 26 days ago
JSON representation

Angular Ngrx Socket.IO Example

Awesome Lists containing this project

README

        

-----------------

# This repository is no longer maintained, please refer to https://github.com/avatsaev/angular-contacts-app-example

--------------

## Angular Ngrx Socket.IO Example

[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT)

This Angular project demonstrates the implementation of a simple real time Notes app, with Socket.IO's asynchrnous 2-way event streams, combined with Ngrx/Store library for single state management à la Redux, and Ngrx/Effects to mange the side effects.

![](http://i.imgur.com/IUArcBH.gif)

Backend available here: https://github.com/avatsaev/angular-ngrx-socket-backend

## Ngrx + Effects with a simple REST Service

![](http://i.imgur.com/bpIbJrd.png)

## Ngrx + Effects with Socket.IO

![](http://i.imgur.com/F7k2Iyj.png)

## Project's file structure:

![file structure](https://i.imgur.com/IbGUfzi.png)

## Application's central state tree:

![](http://i.imgur.com/7DiuGH6.png)

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

## Development server

Run `ng serve` 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|guard|interface|enum|module`.

## Build

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

## Running unit tests

Run `ng test` to execute the unit tests via [Karma](https://karma-runner.github.io).

## Running end-to-end tests

Run `ng 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).