A client panel/ client management system - a single page application with full CRUD functionality, developed using Angular 4 for front-end and Google's firebase for backend.
Firebase gives cloud NoSQL database along with authetication methods. User will be able to login, manage their client. All the clients will have basic information and balance they owe. Settings component => to disable registration for the whole system
The application is hosted on firebase https://clientmanagementsystem-d52ad.firebaseapp.com
To login =>
Email: ankita.patil@gmail.com
Password: 123456
1.Go to https://firebase.google.com/ and log in
2. Go to console -> Add Project
3. Enable authentication => Sign in method => Set the status of provider - "Email/Password" to enable
4. Database - all the clients will be stored here. You have to have client.json
Make the database public by changing the rules
5.Adding initial user to the firebase => Go to authentication -> Add user
Bootstrap the project
npm install bootstrap@4.0.0-alpha.6 jquery tether --save
Include the bootstrap path in "styles" and jquery, tether, bootstrap javascript file path in "scripts" in angular-cli.json
Command
ng g component FOLDER_NAME/NAME_Of_The_Component
- Dashboard
- Inside Dashboard, Client component will be there
- Inside Client component, there are client details
- Component to add clients
- Component to edit clients
- Navigation bar
- Sidebar
- Login
- Register
- Settings
- A component for page not found, if we try to go a route that doesn't exist
Once this is done, setup the router oulet in main app.component.html
npm install firebase angularfire2 --save
npm install angular2-flash-messages --save
## CRUD operations
Only admin will have option to register. Users other than admin will not see Register option
Setting to disable the register option
Changing the database rules -> We need to be authenticated in order to read and write the data
Now, if you go to application, you will not see any data because permission is denied
Clients will be shown only to the people that are logged in
Building the project,
ng build --target=production --environment=prod
After successful build, all the compiled files are stored in dist folder.