A web app for making an auction paltform .
This project was generated with Angular CLI version 7.1.0.
Run npm run build
for a dev server. Navigate to http://localhost:4000/
.
Here npm run build
will execute the script ng build --prod && node ./app.js
which will start the backend and frontend on localhost 4000
as defined in package.json
- Clone the repo
https://github.com/Rupeshiya/advaita-web-challenge.git
. - If you have
angular cli
installed then after navigating to the project folder donpm install
else installangular cli
first usingnpm install -g @angular/cli
thennpm install
(for more details follow the above given link). - Create a database on mlab and an account on sendGrid.
- Then in root directory of folder add a
.env
file and add the following -
- mongoUri = "Your_mongoURI"
- secret = 'helloworld'
- sendgridUsername = 'Your_sendGrid_Username'
- sendgridPassword = 'Your_sendGrid_password'
- emailFrom = 'Your_email_for_sending_mail'
- mailService = 'SendGrid'
- Now after adding all the above requirements , after navigating to the same project folder run the command
npm run build
. - Open the browser and navigate to
http://localhost:4000/
to see the features.
- Should satisfy all the criteria as given in
How To Use
section. - On doing
Bid Now
,it will only accept the bid more than the latest bid (given jsut below the product ) as happens in the auctions. - On doing
Bid Status
click - will render the bidding status just below the navbar . - Any user can use all these functionalities only if loggedIn.
- Bcakend files
- Routes folder -
server
folder - Database code -
models
folder - Passport auth -
config/passport.js
- Frontend files
- Frontend views folders -
src/app/components
- Angular Services files -
src/app/services
- Route guards -
src/app/guards
- Path routes -
src/app/app-routing.module.ts
- Some helper interface
src/app/interface.ts
andsrc/app/response.ts
- Dependencies -
package.json
- Main driving backend code -
app.js
- Register
- Sending mail on register.
- Login
- Restricted routes
- Add Product
- Delete product
- Dashboard
- Bidding
- Current bid status
- User's profile
- Timer
- Logout
- HTML
- CSS
- Bootstrap
- Node.js
- Express
- Mongoose
- mlab
- Angular