Basic client-server application for managing user records.
userManagementAPI provides the following features:
- Seed project for manipulating users' database records
- CRUD operations over User model
- Client-side built with Angular2/ ngx-bootstrap
- Server-side built with Node.Js/ Express/ MongoDB/ Mongoose
- NPM for package managing
- Passport authentication
- Login/Logout
Note that this project requires node >=v6.5.0 and npm >=3.10.3 in order to be able to take advantage of the complete functionality. Make sure you've got MongoDB configured dbpath and server running on default port 27017.
# Clone project
git clone https://github.com/dmusev/userManagementAPI.git
# Navigate to project folder
cd userManagementAPI
# Run back-end package installer
npm install
# Navigate to sub folder "public"
cd userManagementAPI/public
# Run front-end package installer
npm install
# Navigate to project folder again
node index.js
# APP is available at: localhost:8081
# User seeded for initial login: admin password: admin
.
βββ app <- back-end project
| βββ config
| | βββ auth.js
| | βββ config.js
| | βββ database.js
| | βββ express.js
| | βββ passport.js
| | βββ routes.js
| βββ controllers
| | βββ home-controller.js
| | βββ index.js
| | βββ users-controller.js
| βββ models
| | βββ User.js
| βββ utilities
| βββ encryption.js
βββ public <- front-end project
| βββ app
| | βββ
| | βββ components
| | | βββ login
| | βββ modules
| | | βββ home
| | βββ shared
| | | βββ footer
| | | βββ header
| | βββ utils
| | | βββ authGuardComponent.js
| | βββ app.component.ts
| | βββ app.modules.ts
| | βββ app.routes.ts
| | βββ app.view.html
| βββ assets <- global styles
| βββ dist <- compiled typescript files to js
| βββ index.html <- initial html loaded
| βββ package.json <- dependencies of the front-end project
| βββ systemjs.config.js <- configuration of systemjs
| βββ tsconfig.js <- configuration of typescript
βββ .gitignore <- ignore files before git upload
βββ index.js <- node starting .js file
βββ jsconfig.json <- configuration of javascirpt
βββ package.json <- dependencies of the back-end project
βββ README.md <- project readme and how to install