IMPORTANT THIS PROJECT IS NOT LONGER MAINTAINED. THERE WILL BE NO NEW VERSION!
The Vehicle Cost Calculator (VCC) is a web application for tracking and managing the costs of different vehicles. There are different users with different vehicles. Every vehicle belongs to one user and has different cost items of different cost types. In the VCC are you able to track 3 different cost types:
- Single Costs: every cost item, that doesn't repeat and is a repair, administrative purchase , normal purchase or other non repeating cost item.
- Repeating Costs: cost items that repeat in a given period of time e.g. Tax or insurance
- Fuel Costs: all costs which belong to fuel
Every user can have multiple vehicles and costs. For user management VCC differentiate between members (normal user) and admins (administrators). The member is a normal user, using VCC. The admin has the same functionality such as a member. But he can see under his profile a table of all users of VCC. He is able to delete them and edit their role and email.
- For devices with a minimal screen width of 320px, for perfect functionality minimal screen width of 360px
- last 1 Chrome version
- last 1 Firefox version
- last 2 Edge major versions
- last 2 Safari major versions
- last 2 iOS major versions
- Firefox ESR
- not IE 11
- At first unzip the .zip archive.
- Then go into the frontend folder.
- (opt.) If you want to host this tool, and use it not only at the local host:
- Go into
<Route_to_folder>/frontend/src/environments/constants.ts
- Change the following in string
localhost
to the address of your server:
export const backend = { url: 'http://localhost:3000/api', };
- Save the file and close it
- Go into
- Open the command prompt in the root folder of the frontend
<Route_to_folder>/frontend
- Run following commands to install all needed modules and generate the
/dist
folder:
npm install
npm run-script build
- Open the command prompt in the root folder of the backend
<Route_to_folder>/backend
- Run following commands to install all needed modules and start the host server:
npm install
npm run-script start
- The server is now running under
http://localhost:3000
, (opt.) if you are hosting the server, the address is the address of your server.
After installing and starting the server you are able to use the VCC. Initially there exists an admin user with following login data:
- Username: Admin
- Password: Admin-123
It is recommended to change this data. For this follow the following steps:
- If you are logged in, click the logout button in the header.
- In the Login page, click
singup now
create a new user with new username and password. - After creating your account, login as the Admin user, with the login data above
- Click in the navigation area on
Admin
, so that you can see the admin overview - In the displayed table click at the lens to search your created username.
- After finding your own created user, change the role to admin, and save the changes
- Now click on delete this account, to delete the default Admin account.
- Now your created account should be the only admin on the page
Beside the admin account there is an example User, with a vehicle and added costs to show the functionality his login data are:
- Username: Example User
- Password: Example-123
Also, there are 4 Dummy Users to train the admin functionality under your admin profile
The documentation of the api is located in the root directory of the .zip archive. It's written with OpenApi.
- SVGs on the page from: unDraw
- Angular 12
- Design with NG-Zorro
- For the token management auth0/angular-jwt
- For the charts ngx-echarts with echarts
- Express
- For validating the requests express-validator
- For the jwt token jsonwebtoken
- Database neDB
- For generating ids uuid