This project was part of The Odin Project's JavaScript curriculum. The main goal of this project was to build a CV generator using React. The CV generator consists of two main sections: the control and the visualization sections. In the control section, the user can input, edit and delete their information. The information inputted in the control section will be available in real-time in the visualization section. When finished, the user can then download their CV properly formatted in PDF. This project was made using React JS.
This project assignment on The Odin Project
My previous project Personal Portfolio
My next project Memory Card Game
- use favicon.io to generate multiple favicons from a
.png
file to use for my website - use react to custom
svg
by passingprops
likeheight
,width
,color
to acomponent
which will return andsvg
- prevent form submit using 'Enter' in input in React
- a weird bug occur when my form has 2 buttons: 1 button
type='submit'
and 1 button doesn't settype
and when I press 'Enter' within the form's input, a weird warning sayform submission canceled because the form is not connected
and all my form constraint is ignored (meaninput
withrequired
has been ignored and the form just cancel). And this bug can be addressed when I addtype='button'
the other button and everything work normal - passing callback deep many layer of components
- ReactJs combine with custom Image in a dynamic way
import ImageSrc from "img.png"
const Image = ({width: '100%', style = {}}) => {
const custom = Object.assign(styles, {display: 'block'});
return <img style={custom} width={width} src={ImageSrc} alt="Describe this picture"/>
}
- accessibility with
tabIndex
andonKeyDown={(e) => e.key === 'Enter' && e.target.click()}
so this app can be totally using with keyboard
- Vite
- Bun
- ReactJS
- TypeScript
- TailwindCSS
- Animate.css
- uuid
- and more...
- A download button to download CV in a formatted PDF file