Giter Site home page Giter Site logo

hamidosouli-zz / masterportfolio Goto Github PK

View Code? Open in Web Editor NEW

This project forked from ritwik2994/masterportfolio

1.0 0.0 0.0 14.95 MB

This project is a customizable website that provides Software Developers to showcase their skills and work in a portfolio.

Home Page: https://ritwik2994.github.io/

License: MIT License

JavaScript 95.37% HTML 0.70% CSS 3.86% SCSS 0.08%

masterportfolio's Introduction

Software Developer Master Portfolio ๐Ÿ”ฅ

A clean, beautiful, responsive and 100% customizable portfolio
template for Software Developers!

HitCounts NodeJS NPM Made With React code style: prettier
Netlify Status Build Status

Maintenance Website License Price

โญ Star us on GitHub โ€” it helps!

Sections ๐Ÿ“š

โœ”๏ธ Summary and About me
โœ”๏ธ Skills
โœ”๏ธ Open Source Projects Connected with Github
โœ”๏ธ Experience
โœ”๏ธ Certifications ๐Ÿ†
โœ”๏ธ Blogs
โœ”๏ธ Education
โœ”๏ธ Contact me

To view a live example, click here

Clone And Use ๐Ÿ“‹

  • The website is completely built on react-js framework of javascript and that's why we need nodejs and npm installed.
  • While installing nodejs and npm, try to install versions which are equal or greater than the versions mentioned in badges above.
  • In case you want to help developing it or simply saving it, you can fork the repository just by clicking the button on the top-right corner of this page.
  • After the successful installation of nodejs and npm, clone the repository into your local system using below command:
    •  git clone https://github.com/ritwik2994/masterPortfolio.git
    • This will clone the whole repository in your system.
  • To download required dependencies to your system, navigate to the directory where the cloned repository resides and execute following command:
    • npm install
  • Now, the project is ready to use.
  • You can check it using npm start, it will open the website locally on your browser.

Customize it to make your own portfolio โœ๏ธ

In this project, there are basically 3 things that you need to change to customize this to anyone else's portfolio: package.json, Personal Information and Github Information.

package.json

Open this file, which is in the root directory, choose any "name" and change "homepage " to https://<your-github-username>.github.io. Do not forget the https://, otherwise fonts will not load.

Personal Information

You will find src/portfolio.js file which contains the complete information about the user. The file looks something like below:

// Home Page
const greeting = {
    ...
}

// Social Media
const socialMediaLinks = {
    ...
}

...

You can change the personal information, experience, education, social media, certifications, blog information, contact information etc. in src/portfolio.js to directly reflect them in portfolio website.

Github Information

In the root directory there is a .env_example file. Open it and copy all the contents, now create a new file .env in the root directory and paste all the contents there. You will see below components in the file. Now you need to change only the components.

  GITHUB_TOKEN = YOUR GITHUB TOKEN 
  GITHUB_USERNAME = YOUR USERNAME

You can get a github token as described here. Give all permissions while generating token. Also add your GITHUB_USERNAME in the correct field inside .env. Now, you need to run following command.

node git_data_fetcher.js

This will fetch all the data from your github and it will automatically replace my data with yours. Whenever you want to update the github related information on the website you need to run this command.

You will find git_data_fetcher.js file in the root directory of the repository. This file is used to fetch the data (Pull requests, Issues, Organizations, Pinned projects etc.) from your github.

Choose Theme ๐ŸŒˆ

  • You can take a look at src/theme.js file where all available themes are mentioned with respective color codes.

  • At the bottom of this file you will see the below code:

    • export const chosenTheme = blueTheme;
    • You need to change the name from blueTheme to whatever theme you want to set your website to.
    • You can define new theme similarly as other themes and you can assign name of that new defined theme to chosenTheme.
  • That's it. You just need to change the theme name and the code will take care of everything else.

    Run npm start to check if everything is ok.

Deployment ๐Ÿ“ฆ

  • Once you are done with your setup and have successfully completed all steps above, you need to put your website online!
  • I highly recommend using Github Pages to achieve this the EASIEST WAY.
  • To deploy your website, you have two options. First you need to create a github repository with the name <your-github-username>.github.io. Please don't give it any other name.
  • Now, you need to generate a production build and deploy the website.

Option 1:

  • Run npm run build to generate the production build folder.
  • Enter the build folder, git init and push the generated code to the master branch of your new repository. That's it. Done. You may need to git init and force push at every new build.

Option 2 (will not work with user pages):

  • Run npm run deploy to build and create a branch called gh-pages. It will push the build files to that branch.
  • The last step in deploying is to enable Github Pages in settings of the repository and select gh-pages branch.

Now, your website is successfully deployed and you can visit it at <your-github-username>.github.io.

Technologies used ๐Ÿ› ๏ธ

illustrations ๐Ÿฅ

License ๐Ÿ“„

This project is licensed under the MIT License - see the LICENSE.md file for details.

Contributing ๐Ÿ’ก

If you can help us with these. Please don't hesitate to open an pull request or issue.

  • Move to Gatsby
  • Add Podcast Section and Video Section
  • Add tests to automate review.
  • Setup Travis workflow.
  • Dark Theme

References ๐Ÿ‘๐Ÿป

masterportfolio's People

Contributors

ritwik2994 avatar

Stargazers

Roman avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.