Giter Site home page Giter Site logo

satyamkhadka / developerfolio Goto Github PK

View Code? Open in Web Editor NEW

This project forked from saadpasta/developerfolio

0.0 1.0 0.0 17.38 MB

๐Ÿš€ Software Developer Portfolio Template that helps you showcase your work and skills as a software developer.

Home Page: https://developerfolio.js.org/

License: GNU General Public License v3.0

HTML 3.26% JavaScript 61.93% Dockerfile 0.50% CSS 0.99% SCSS 33.32%

developerfolio's Introduction

Software Developer Folio โšก๏ธ GitHub GitHub stars All Contributors

A clean, beautiful and responsive portfolio template for Developers!

Just change src/portfolio.js to get your personal portfolio. Customize portfolio theme by using your own color scheme globally in the src/_globalColor.scss file. Feel free to use it as-is or personalize it as much as you want.

If you'd like to contribute and make this much better for other users, have a look at Issues.

Created something awesome for your fork of the portfolio and want to share it? Feel free to open a pull request.

Table of Contents

Portfolio Sections

โœ”๏ธ Summary and About me
โœ”๏ธ Skills
โœ”๏ธ Education
โœ”๏ธ Work Experience
โœ”๏ธ Open Source Projects Connected with GitHub
โœ”๏ธ Big Projects
โœ”๏ธ Achievements And Certifications ๐Ÿ†
โœ”๏ธ Blogs
โœ”๏ธ Talks
โœ”๏ธ Podcast
โœ”๏ธ Contact me
โœ”๏ธ Twitter Timeline
โœ”๏ธ GitHub Profile

To view a live example, click here.

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.

You'll need Git and Node.js (which comes with npm) installed on your computer or use Docker.

Docker Commands

1) BUILD IMAGE : docker build -t developerfolio:latest .
2) RUN IMAGE: docker run -t -p 3000:3000 developerfolio:latest

How To Use

From your command line, clone and run developerFolio:

# Clone this repository
git clone https://github.com/saadpasta/developerFolio.git

# Go into the repository
cd developerFolio

# Setup default environment variables

# For Linux
cp env.example .env
# For Windows
copy env.example .env

# Install dependencies
npm install

# Start a local dev server
npm start

Linking Portfolio to GitHub

Generate a GitHub personal access token following these instructions (make sure you don't select any scope just generate a simple token). If you are using GitHub Actions to deploy your portfolio you can skip this section.

  1. Create a file called .env in the root directory of your project (if not done already in section: How To Use)

Note: Configuring environment variables before deploying your portfolio is highly recommended as some components depend on API data.

- DeveloperFolio
  - node_modules
  - public
  - src
  - .env         <-- create it here
  - env.example  <-- this is the base file
  - .gitignore
  - package-lock.json
  - package.json
  1. Inside the .env file, add key REACT_APP_GITHUB_TOKEN and assign your GitHub token like this, also add your username as GITHUB_USERNAME
// .env
REACT_APP_GITHUB_TOKEN = "YOUR GITHUB TOKEN HERE"
GITHUB_USERNAME = "YOUR GITHUB USERNAME"

Set showGithubProfile to true or false to show Contact Profile using GitHub, defaults to false.

Warning: Treat your tokens like passwords and keep them secret. When working with the API, use tokens as environment variables instead of hardcoding them into your programs.

Note: Open Source Projects section only show pinned items of your GitHub. If you are seeing something as shown below, follow these instructions.

ERROR

If the above solution still doesn't work, visit the wiki page.

Linking blogs section to Medium

Optionally, you can link the blogs section to your medium user account:

  • Inside the .env file, add key MEDIUM_USERNAME and assign your Medium username
// .env
MEDIUM_USERNAME = "YOUR MEDIUM USERNAME"
  • For Github Action, change the environment variable MEDIUM_USERNAME in .github/workflows/deploy.yml

Set displayMediumBlogs to true or false in portofolio.js to display fetched Medium blogs, defaults to true.

Change and customize every section according to your need.

Personalize page content in /src/portfolio.js & modify it as per your need. You will also need to modify index.html to change the title and metadata to provide accurate SEO for your personal portfolio.

/* Change this file to get your Personal Porfolio */

const greeting = {
  /* Your Summary And Greeting Section */
  title: "Hi all I'm Saad",
  subTitle: emoji("A passionate Full Stack Software Developer ๐Ÿš€"),
  resumeLink: "https://drive.google.com/file/d/1ofFdKF_mqscH8WvXkSObnVvC9kK7Ldlu/view?usp=sharing"
};

const socialMediaLinks = {
  /* Your Social Media Link */
  github: "https://github.com/saadpasta",
  linkedin: "https://www.linkedin.com/in/saadpasta/",
  gmail: "[email protected]",
  gitlab: "https://gitlab.com/saadpasta",
  facebook: "https://www.facebook.com/saad.pasta7"
};


const skillsSection = { .... }

const techStack = { .... }

const workExperience = { .... }

const openSource = { .... }

const bigProjects = { .... }

const achievementSection = { .... }

const blogSection = { .... }

const contactInfo = { .... }

const twitterDetails = { ... }

Using Emojis

For adding emoji ๐Ÿ˜ƒ into the texts in Portfolio.js, use the emoji() function and pass the text you need as an argument. This would help in keeping emojis compatible across different browsers and platforms.

Customize Lottie Animations

You can choose a Lottie and download it in json format from from sites like this. In src/assets/lottie, replace the Lottie json file you want to alter with the same file name. If you want to change the Lottie options, go to src/components/displayLottie/DisplayLottie.js and change the defaultOptions object, you can refer react-lottie docs for more info on the defaultOptions object.

Adding Twitter Time line to your Page

Insert your Twitter username in portfolio.js to show your recent activity on your page.

const twitterDetails = {
  userName : "Your Twitter Username"
};

Note: Don't use @ symbol when adding username.

Deployment

When you are done with the setup, you should host your website online. We highly recommend to read through the Deploying on GitHub Pages docs for React.

Configuring GitHub Actions (Recommended)

First you should enable, GitHub Actions for the repository you use.

The Profile and the Repository information from GitHub is only created at the time of deploy and the site needs to be redeployed if those information needs to be updated. So, a configurable CRON Job is setup which deploys your site every week, so that once you update your profile on GitHub it is shown on your portfolio. You can also trigger it manually using workflow_dispatch event, see this guide on how to do that.

Deploying to GitHub Pages

This section guides you to deploy your portfolio on GitHub pages.

  • Navigate to package.json and enter your domain name instead of https://developerfolio.js.org/ in homepage variable. For example, if you want your site to be https://<your-username>.github.io/developerFolio, add the same to the homepage section of package.json.

  • In short you can also add /devloperFolio to package.json as both are exactly same. Upon doing so, you tell create-react-app to add the path assets accordingly.

  • Optionally, configure the domain. You can configure a custom domain with GitHub Pages by adding a CNAME file to the public/ folder.

  • Follow through the guide to setup GitHub pages from the official CRA docs here.

Deploying to Netlify

You could also host directly with Netlify by linking your own repository.

Deploy To Netlify

For more information, read hosting on Netlify.

Technologies Used

Illustrations

For the Future

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

  • Connect with LinkedIn to get Summary, Skills, Education and Experience

  • Move to Gatsby

  • Add More Sections

Project Maintainers


Saad Pasta

Kartik Choudhary

Naveen M K

Muhammad Hasham

Contributors

Thanks goes to these wonderful people (emoji key):


Fawad Ali

๐Ÿค” ๐Ÿ’ป

Dasun Navoda

๐Ÿ“–

Brian Teeman

๐Ÿ“–

Rajkumar S

๐Ÿ’ป

Slim Coder

๐Ÿ’ป ๐Ÿ“–

Mohamed Sayyaf

๐Ÿ“–

Ashutosh Hathidara

๐Ÿ’ป

Rizwan Jamal โšก๏ธ

๐Ÿ“–

Muhammad Hasham

๐Ÿ’ป

UJJAWAL JOSHI

๐Ÿ’ป

Palak Sethi

๐Ÿ’ป

Vinicius Barbosa

๐Ÿ’ป

Bharat Kammakatla

๐ŸŽจ

Garima Singh

๐Ÿ’ป

Henry Heng

๐Ÿ’ป ๐ŸŽจ

Pulkit Banta

๐Ÿ’ป ๐Ÿ›

Akshay Kumar

๐Ÿ’ป ๐Ÿ›

Amna Ejaz

๐Ÿ’ป ๐Ÿค”

Paras Nagpal

๐Ÿ’ป

Sparsh Garg

๐Ÿ’ป

Aashutosh Rathi

๐Ÿ’ป

Abhishek Kashyap

๐Ÿ›

Lucas V C Nicolau

๐Ÿ“–

Bradley C. Herrin

๐Ÿ“– ๐Ÿค”

Zekinah Lecaros

๐Ÿ’ป

unbeat

๐Ÿ“–

Arshad Ahmed

๐Ÿ“–

Xiaohui Liu

๐Ÿ“– ๐Ÿ’ป ๐ŸŽจ

Seungyeon-Lee

๐Ÿ’ป

Najam Shehzad

๐Ÿ’ป

Randy Jesus Real Srsen

๐Ÿ’ป

Tamojit Das

๐Ÿ“–

Waren Gonzaga

๐Ÿ’ป

Benjamin Bourgeois

๐Ÿ’ป

Keshav Jain

๐Ÿ’ป

Hanzla

๐Ÿ’ป

Yogesh Rathod

๐Ÿ“–

Kunal Mundada

๐Ÿ“–

Anubhav Gupta

๐Ÿ’ป

Vatsal Dave

๐Ÿ’ป

Elvis Ciuffetelli

๐Ÿ’ป

Scott Jellen

๐Ÿ’ป ๐ŸŽจ

Karthik Mohan

๐Ÿ›

mhowell11

๐Ÿ“–

gajanandh

๐Ÿ›

JooHyukKim

๐Ÿ’ป

Red Headphone

๐Ÿ’ป

Sunit Roy

๐Ÿ›

Atir Nayab

๐Ÿ›

Shehriyar Qureshi

๐Ÿ’ป

respectech

๐Ÿ’ป

Brayden

๐Ÿ›

Canciu Costin

๐Ÿ’ป

Atharv Singh

๐Ÿ’ป

developerfolio's People

Contributors

9inpachi avatar aashutoshrathi avatar abhishekashyap avatar akshaychd avatar allcontributors[bot] avatar ashutosh1297 avatar ashutosh1919 avatar canciucostin avatar dependabot[bot] avatar exspiravit avatar garimasingh128 avatar kartikcho avatar keshavjain235 avatar naveen521kk avatar palak-sethi avatar parasnagpal avatar pre-commit-ci[bot] avatar pulkitbanta avatar rajkumaar23 avatar redgitwolf avatar redheadphone avatar rizwanjamal avatar saadpasta avatar sadapasta avatar sjellen avatar sparsh-99 avatar vivekanand999 avatar yeonsoy avatar yogeshhrathod avatar zekinah avatar

Watchers

 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.