![]()

![]()
My own Full MEAN stack Starter kit with Ionic Framework and ReactiveX API (ngrx/Store + ngrx/Effects) & GraphQL/REST Server API and many more...
MEAN Ionic NgRx is a TypeScript Full Stack Starter with MongoDB + ExpressJS + Angular + NodeJS + Ionicframework and many more tools.
It's a simple todo application exemple with REST server-side for Users authentification with JWT + GraphQL server-side for request all others datas. Front side is building with Angular and Ionicframework and using ReactiveX API (ngrx/Store + ngrx/Effects) to provide a better and simply datas management + ngx-translate to internationalize languages + using Apollo Client provider to work with GraphQL server-side + Angular HttpClientModule to work with REST server-side.
Hop is help you to start your project on the right way.
$ nvm install node 7.$ npm install -g typescript$ npm install -g ionic cordova$ npm install -g typedoc$ npm install -g karma-cli$ npm install -g protractor && webdriver-manager update$ npm install -g gulp$ nvm use 7$ npm install$ npm run dev to start Front-End+Back-End in development mode$ npm run prod to start Front-End in production mode (you have to config your production environments variable)http://localhost:8100Tips:
$ npm run helper.cmd to display all package.json script available with definitionkillall mongod or killall node to kill all processFirst add selected platform: $ ionic cordova platform add browser|ios|android (one by one). Then you can build each platform with ionic CLI $ ionic build browser|ios|android --prod
And we have the following npm run script ready to use:
$ npm run build:browser to build app browser version with development environment variables$ npm run build:browser --prod to build app browser version in Angular Prod mode with production environment variablesIf you want, you can add your own build run script.
$ npm run deploy:server to deploy server side on heroku$ npm run deploy:client to deploy client side on GitHub gh-pages$ npm run docs./docs/index.html to read documentationhttp://localhost:8080/graphqlhttp://YOUR_HOST/graphql (or https)http://localhost:8080/graphiqlhttp://localhost:8080/resthttp://YOUR_HOST/rest (or https)TODOS Endpoints
path: http://localhost:8080/rest/todos
autenticate: false
methode: $_GET / $_POST
path: http://localhost:8080/rest/todos/:id
autenticate: false
methode: $_GET / $_POST / $_DELETE
AUTH Endpoints
path: http://localhost:8080/rest/auth
autenticate: false
methode: $_POST
path: http://localhost:8080/rest/isauth
autenticate: false/true
methode: $_GET
path: http://localhost:8080/rest/signup
autenticate: false
methode: $_POST
USERS Endpoints
path: http://localhost:8080/rest/users
autenticate: true
methode: $_GET
path: http://localhost:8080/rest/users/:id
autenticate: true
methode: $_GET
App Documentations is generate by typeDoc. Use the following cmd to generate documentation
$ npm run docs will generate Angular Application documentation and open the index doc in browser.Important: You have to update/change/replace mongod npm script into main ./package.json line 18 . Update mongod $path with your own path (or run $npm run mongod to check if mongo starting correctly).
To using in production mode:
git checkout master$ heroku create$ git remote -v$ git checkout <WORKING_BRANCH>./environments/production.tsHeroku docs:
Feel free to contrib to my stack.
$ git checkout -b YOUR_BRANCHdev branch / or submit small fix on the master branch.Hi, i'm a Front-end developper living in Geneva Switzerland and i build hybrid mobile & web applications for almost 15 years. You can follow me on Twitter @FazioNico or checkout my own website https://nicolasfazio.ch
Generated using TypeDoc