dev-portfolio is React library that helps you develop your web portfolio easily and quickly.
Package Exports
dev-portfolio
dev-portfolio/dist/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (dev-portfolio) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
dev-porfolio
dev-portfolio is React library that helps you develop your web portfolio easily and quickly.
Install boiler-plate code by using npx. If you want to see README.md of boiler-plate, go to the create-dev-portfolio.
npx create-dev-portfolio <YOUR_APP_NAME>
Usage
import{ Header, Intro, Contact,...}from'dev-portfolio';constApp=()=>{return(// The 'className' in the <div> tag surrounding the components of 'dev-portfolio' must be 'App'.// Only then can the SideBar in the <Header> component recognize id props and automatically assign all components into the SideBar.<div className="App"><Header /><Intro /><Contact />...</div>);}exportdefault App;
const sideBarOption ={mainTitle:'dev-portfolio',mainTitleSize:'24px',mainTitleColor:'white',mainTitleAlign:'left',mainTitleBorderColor:'white',iconName:'ant-design:menu-fold-outlined',//Refer to the guidelines.iconSize:'28px',iconColor:'#434521',iconMargin:'0px 12px 0px 12px',itemTextColor:'white',itemTextAlign:'left',itemBackgroundColor:'#434521',itemHoverdBackgroundColor:'black',backgroundColor:'#434521',};
import{ Intro }from'dev-portfolio';const introOption =[...];constApp=()=>{return(<Intro
id="Intro Component"
textAlign="left"
backgroundColor="whitesmoke"
title="Introduction"
shortIntro="Hello I am a developer enjoys growing up!"
description="My name is OOO, BE developer good at Nodejs bla bla..."
descriptionColor="black"
descriptionBackgroundColor="black"
textAlign="black"
backgroundColor="black"/>);}exportdefault App;
Intro text align style. You can choose one of the themes such as 'left' and 'center'.
'left'
backgroundColor
string
Intro background color style.
'whitesmoke'
title
string
Title of Intro section.
'Intro'
shortIntro
string
Main text that can express you the best.
'shortIntro that will captivate people'
description
string
Introduce yourself
'This props name is description.\nPlease write down your brief introduction here. If you want to change the line, type backslash-n between the letters. Also you want to move the letters to the center, change textAlign to center. code your dreams!'
You can add your history data such as date, title, description, etc.
See "More about Experience's Props"
More about Experience's props
historyList example
const historyList =[{startDate:'2022.01.01',endDate:'2022.03.10',title:'this is title',description:'This prop name is des.\nWrite down the additional explanation you want here.\nYou can break the line to backslash-n.',},{startDate:'2020.02',title:'this is title',description:`If you just want to write the date and time without the text,\ndon't worry !\nYou can write a des props just by emptying it.\nAn example is shown below.`,},{startDate:'2018',endDate:'2019.12',title:'this is title',},];
You can choose the color of your customized components in Gallery when they are hoverd with a variety of theme such as 'mid-night', 'blossom', 'fruits', 'bare-bare', 'mint-chocolate'.
'mid-night'
padding
string
Gallery padding
'2em 10em'
Masonry
import{ Masonry, Image }from'dev-portfolio';constApp=()=>{return(<Masonry id="Masonry Component" column={4} padding="2em 4em">/* Must insert components customized */<YOUR_COMPONENT/><Image src="anything.png" redirectURL="/"/>/* Component of dev-portfolio */<Image src="https://picsum.photos/900/1100/?random" redirectURL="/"/>/* Component of dev-portfolio */</Masonry>);};exportdefault App;
You can make an effect on Card a variety of theme such as 'up', 'down', 'zoom'.
'none'
Contact
import{ Contact }from'dev-portfolio';const channels =[...];const aboutMeInfos =[...];constApp=()=>{return(<Contact
id="Contact Component"
backgroundColor="whitesmoke"
title="Hello My name is OOO"
subTitle="If you're interested in me, please press the button below :D"
buttonText="Want to work with me?"
email="abc@dev-portfolio.com"
channels={channels}
aboutMeInfos={aboutMeInfos}
titleColor='black'
subTitleColor='black'
buttonTextColor='black'
buttonColor='black'
buttonBorderColor='black'/>);};exportdefault App;
const aboutMeInfos =[{title:'Where I live',description:'Gangdong-gu, Seoul, Republic of Korea',},{title:'Give me a call',description:'T. +82 (0)10 1234 5678',},{title:'Or, why don’t you email me?',description:'dev-portfolio@gmail.com',},],
Description, nickname, and date displayed in comment list
See "More about VisitorComment's Props"
fetched variable
handleCreateComment
(e?: React.MouseEvent) => void
Comments Props for event handling
handleChangeDescription
(e?: React.ChangeEvent) => void
Description Props for event handling
handleChangeNickname
(e?: React.ChangeEvent) => void
Nickname Props for event handling
handleChangePassword
(e?: React.ChangeEvent) => void
Password Props for event handling
More about VisitorComment's props
VisitorComment example
const visitorComment ={theme:'basic',progressbarColor:'#5f5f5f',isShowScrollDownIcon:true,commentList:[{description:`The scroll customization method is the same as the teckstack component progress bar, so please use it!`,nickname:'woorim960',date:'2022-08-26',},{description:`Progress bar customization is also possible when creating a scroll.`,nickname:'seohyunsim',date:'2022-08-26',},{description:`Likewise, there are three types of themes: basic, box, and vertical.`,nickname:'jisu3817',date:'2022-08-26',},{description:'Refer to dev-portfolio README.md for instructions on building a personal server.',nickname:'soonki-98',date:'2022-08-26',},{description:`A personal server can be built through environmental variables, and visitors can write their text and nicknames.`,nickname:'woorim960',date:'2022-08-26',},{description:'By looking at your portfolio, visitors can leave a guest book.',nickname:'seohyunsim',date:'2022-08-26',},],};