Skip to content

vaibhava17/vaibhav17-server.github.io

Repository files navigation

MIT License LinkedIn


Logo

Portfolio Server

A backend server for portfolio website.
With simple APIs for faster integration and developing.
Explore the docs »

View Demo · Report Bug

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Contributing
  5. License
  6. Contact

About The Project

Logo

This is a fast and easy to use backend server. build using node js and express. If you're looking for a ready to use server for your amazing application you can use it. Do changes as you need.

Of course, no one will serve all projects since your needs may be different. So I'll be adding more in the near future. You may also suggest changes by forking this repo and creating a pull request or opening an issue. Thanks to all the people have contributed to expanding this server!

(back to top)

Built With

Node.js Express.js MongoDB Heroku npm Mongoose JSON Web Token Bootstrap Axios Twilio

(back to top)

Getting Started

Prerequisites

  • npm

    npm install npm@latest -g
  • MongoDB Atlas Account for database

  • This app has 2-Factor Authentication using Twilio. So you need to create a twilio account and get the credentials. You can also use Nexmo for 2FA or just change the code in services\user.service.js for login function.

Optional prerequisites

  • Heroku Account for deployment

Installation

To get a local copy up and running follow these simple steps.

  1. Clone the repo
    git clone https://github.com/vaibhava17/vaibhava17-server.github.io.git
  2. Install NPM packages
    npm install
  3. Create .env and Add
     PORT=3030
     NODE_ENV=development
     MONGO_URI=your_mongodb_uri
     JWT_SECRET=123456
     SALT_ROUNDS=10
     OTP_CHARACTERS=abc123
     OTP_LENGTH=6
     API_URL="http://localhost:3030"
    
     <!-- For 2-Factor Authentication -->
     TWILIO_ACCOUNT_SID=your_twilio_account_sid
     TWILIO_AUTH_TOKEN=your_twilio_auth_token
     TWILIO_PHONE_NUMBER=your_twilio_phone_number
    
     <!-- For Deplyment on Heroku -->
     HEROKU_APP_NAME=your_heroku_app_name
     HEROKU_API_KEY=your_heroku_api_key
     HEROKU_EMAIL=your_heroku_email
    
     <!-- For github projects link -->
     GH_API_URL=https://api.github.com/repos
  4. Run Server
    npm run dev
    
  5. Open http://localhost:3030 with your browser to see the result.
  6. You can also use the dummy data in to test the server.
    npm run data:import
    
    npm run data:destroy
    

Check TODO comments in data\user.data.js before running these dummy data commands.

(back to top)

Usage

  • Portfolio Website
  • Blog Website
  • Gallery Website
  • E-commerce Website & many more.

For existing APIs Documentation, Follow this link

(back to top)

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

See the open issues for a full list of proposed features (and known issues).

(back to top)

License

Distributed under the MIT License. See LICENSE for more information.

(back to top)

Contact

_vaibhava__ . vaibhav98a . vaibhava17

(back to top)


Made with ❤️ by Vaibhav