A basic app that has all the features that all platfroms have like authentication, validation, error handling and more.
Similar to the MEAN stack just with Neo4j rather than Mongo.
- Angular (client), Node (API), Neo4j (database)
- Nodejs in Typescript
- Basic Webpack build for Node (API)
- Angular CLI
- Chrome extension build output
- JWT (JSON web token) authentication
- Password hashing + salt
- SendGrid Email integration
- Angular Material
- Neo4j query integration
- API arcitecture (route -> controller -> service -> repository)
- Shared validation between Angular and Node (Error handling)
- Shared strongly typed view models
- Shared strongly typed API endpoints
- Google analytics - automatic page tracking
- Client share actions
- Lazy load routes with preloaded parts
- Image uploader to Firebase storage
- Tutorial/on-boading framework
- Emoji picker (Material CDK)
- Media (Image, YouTube, Vimeo) display component
- Web share API
- Basic web socket connection
- Stripe Payment integration
- Custom Material theme
Client pages
- sign up
- login
- forgot password/reset password
- header navigation/footer
- newsletter sign up
- email feedback
- profile
- tutorials
- verify email
- terms and conditions, pricacy policy and help
- Progressive Web App (PWA)
- Angular localization
- GraphQL integration (Apollo)
- Cordova IOS build output
- Unit + integration tests (Karma + Protractor)
Make sure you have Node.js, Neo4j and Angular CLI installed.
Neo4j note: create a local database with with username: neo4j and password: neo4j
$ git clone [email protected]:CharlBest/nean-stack-starter.git
$ cd nean-stack-starter
$ npm install
$ npm start
Your app should now be running on localhost:3000
$ npm run dev
Its free ;)
This file is Heroku specific for hosting the nean demo app. Delete it if your are not using Heroku
Change to yours.
In the environments folder there are 2 files. one for dev and one for production. The angular CLI switches them at build time.
In the environments folder there is 1 file. In development default values are used. In production your hosting service should set process.env with the appropriate variables
Note: firebase storage has authentication on their buckets. Whitelist your url or something