Kaffiend / electron-angular-ngrx

An Angular (6x) Electron seed featuring @angular/cli, @ngrx/platform, and Typescript. Complete with HMR workflow

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Electron Angular NGRX

Dependency Status devDependency Status GitHub license Dev Dependency flags are from Karma, will update as they do.

Mission

  • The mission of this project is to provide a simple to use quick start seed that works with @angular/cli. This is to keep this seed's build and development process easy to maintain and build on.
  • Embracing @angular/cli and @ngrx/platform to it's fullest, including @ngrx/schematics for the CLI. @ngrx/schematics is not released yet, but we will keep up with the nightly builds as it progresses towards release as some of its features make developing in the platform extremly efficient.
  • This seed takes a low impact approach to some of the issues plagued by angular electron seeds. This seed uses minimal approach to instead proxy the electron window, instead of reloading through services such as electron-connect. All building and serving is still done by the CLI. We just proxy the connection to the CLI services via scripting. All STDOUT output from the CLI during tasks is passed through to your process so you can still see it working in the background.
  • We will make an unrelenting effort to keep this seed up to date. We use it internally for own projects and thus keeping everything upto date is paramount. This seed will stay paralell with our own private servers on the 'master' branch.
  • Gulp has been removed for simplicity and performance.

Table of Contents

Getting Started

  • This project requires Electron, Gulp, and Angular CLI.
  • See angular/cli for CLI version.
npm install -g @angular/cli
npm install -g electron
npm install

npm start is the default task that launchs the HMR development workflow.

Project Structure

├── dist                <--Angular Build Artifacts
|  ├── electron         <--Electron Build Artifacts
├── e2e                 <--End-To-End Tests (Protractor)
├── src
|  ├── app              <--Angular App Code
|  ├── assets           <--Images, Fonts, Icons etc.
|  ├── electron         <--Main Electron Process Code
|  ├── environments     <--Dev, Prod, and HMR Environment Files
|  ├── hmr.ts           <--HMR Bootstraping Utility
|  ├── main.ts          <--Angular Entry Point (HMR Logic Included)
├── typings             <--Custom Typings

Build Process

Build - HMR (development)

Run npm start (default script), and launch the HMR Workflow.

Contributing

Pleaes review the CONTRIBUTING guidlines.

ToDo

  • Integrate HMR (Hot Module Relplacement) workflow.
  • Clean up tasks in a uniform manner and self-documenting.
  • Integrate simple NGRX with HMR.
  • Electron packaging.
  • Integrate developement extensions redux, devtron.
  • Add Compodoc.
  • Native Module Support.
  • Add contribution guidelines.
  • Add Conventional Changelog.
  • Wiki for adding @angular/material.
  • Wiki for adding Bootstrap.
  • Wiki for local FontAwesome for packaging.

angular/cli

This project was generated with Angular CLI version 1.6.3. This project is currently maintained and was upgraded to version 6.1.2

Running unit tests

Run ng test to execute the unit tests via Karma.

Running end-to-end tests

Run ng e2e to execute the end-to-end tests via Protractor.

Further help

To get more help on the Angular CLI use ng help or go check out the Angular CLI README.

About

An Angular (6x) Electron seed featuring @angular/cli, @ngrx/platform, and Typescript. Complete with HMR workflow

License:MIT License


Languages

Language:CSS 91.0%Language:TypeScript 7.9%Language:JavaScript 0.6%Language:HTML 0.4%