added new route

This commit is contained in:
2022-04-05 15:21:59 -05:00
parent 9e320dddc2
commit 0080680c9c
8 changed files with 64 additions and 19 deletions

View File

@@ -3,6 +3,7 @@ import Welcome from './pages/Welcome';
import Projects from './pages/Projects'; import Projects from './pages/Projects';
import Technologies from './pages/Technologies'; import Technologies from './pages/Technologies';
import Links from './pages/Links'; import Links from './pages/Links';
import CreativeWorks from './pages/CreativeWorks';
import InProgress from './pages/InProgress'; import InProgress from './pages/InProgress';
import './App.scss'; import './App.scss';
@@ -10,7 +11,7 @@ function App() {
return ( return (
<div className="App"> <div className="App">
<header> <header className="app-navbar">
<h2 className="my-name">Mikayla Dobson</h2> <h2 className="my-name">Mikayla Dobson</h2>
<h2>Web Design Contractor</h2> <h2>Web Design Contractor</h2>
</header> </header>
@@ -23,6 +24,7 @@ function App() {
<Route path='/in-progress' element={<InProgress />} /> <Route path='/in-progress' element={<InProgress />} />
<Route path='/technologies' element={<Technologies />} /> <Route path='/technologies' element={<Technologies />} />
<Route path='/links' element={<Links />} /> <Route path='/links' element={<Links />} />
<Route path='/creative-works' element={<CreativeWorks />} />
</Routes> </Routes>
</BrowserRouter> </BrowserRouter>
</main> </main>

View File

@@ -44,4 +44,9 @@ header {
@keyframes gallery-animation-right { @keyframes gallery-animation-right {
} }
// .welcome-page {
// // background-image: url('./media/max-harlynking-_QcLpud-gD0-unsplash.jpg');
// background: url('./media/max-harlynking-_QcLpud-gD0-unsplash.jpg');
// }

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 MiB

View File

@@ -0,0 +1,8 @@
export default function CreativeWorks() {
return (
<>
<h1>Creative works</h1>
<a href='/'>Home</a>
</>
)
}

View File

@@ -9,7 +9,7 @@ const { headerCard, projectCards, cardDimensions } = ProjectsPage;
export default function Projects() { export default function Projects() {
return ( return (
<Grid sx={htmlTheme}> <div style={htmlTheme}>
<Card sx={[headerCard, cardDimensions]}>What I Do:</Card> <Card sx={[headerCard, cardDimensions]}>What I Do:</Card>
<Card sx={[projectCards, cardDimensions]}> <Card sx={[projectCards, cardDimensions]}>
@@ -18,6 +18,13 @@ export default function Projects() {
<p>I am comfortable conceptualizing and organizing complex structures, and as such, my projects tend to be natural in their structure and easy to maintain.</p> <p>I am comfortable conceptualizing and organizing complex structures, and as such, my projects tend to be natural in their structure and easy to maintain.</p>
</Card> </Card>
<Card sx={[projectCards, cardDimensions]}>
<h2>Creative minded problem solver</h2>
<p>My rich creative background as a musician, composer, producer, and artistic collaborator provide me with a unique frame of reference for
solving technical problems and adapting to dynamic environments.</p>
<a href="/">See some of my creative works for examples of my aptitudes, as well as some thoughts on how they apply to work as a developer!</a>
</Card>
<Card sx={[projectCards, cardDimensions]}> <Card sx={[projectCards, cardDimensions]}>
<h2>Database Operations and Management</h2> <h2>Database Operations and Management</h2>
<p>My projects have featured both relational and non-relational databases, in particular PostgreSQL and MongoDB.</p> <p>My projects have featured both relational and non-relational databases, in particular PostgreSQL and MongoDB.</p>
@@ -25,6 +32,6 @@ export default function Projects() {
</Card> </Card>
<a href="/">Go home</a> <a href="/">Go home</a>
</Grid> </div>
) )
} }

View File

@@ -13,8 +13,13 @@ import profile from '../media/profile.jpeg';
import { DocumentStyle, WelcomePage } from '../styles/Style'; import { DocumentStyle, WelcomePage } from '../styles/Style';
const { pageTheme, galleryTheme, galleryRow, galleryPages, galleryPage, welcomeFooter } = WelcomePage; const {
const { buttonStyle, galleryArrowStyle, galleryCards } = DocumentStyle; pageTheme, galleryTheme, galleryRow,
galleryPages, galleryPage, welcomeFooter,
mainHeaderCard
} = WelcomePage;
const { buttonStyle, galleryArrowStyle, galleryCards, dividerStyle } = DocumentStyle;
// Web page logic // Web page logic
@@ -22,6 +27,7 @@ export default function Welcome() {
const [gallery, setGallery] = useState([0,1]); const [gallery, setGallery] = useState([0,1]);
const [rendered, setRendered] = useState(); const [rendered, setRendered] = useState();
// identifiers
const cardOne = useRef(); const cardOne = useRef();
const cardTwo = useRef(); const cardTwo = useRef();
const cardThree = useRef(); const cardThree = useRef();
@@ -45,22 +51,25 @@ export default function Welcome() {
<Button ref={buttonFive} variant="contained" href="/creative-works" sx={buttonStyle}>Where can I listen to some of your music?</Button> <Button ref={buttonFive} variant="contained" href="/creative-works" sx={buttonStyle}>Where can I listen to some of your music?</Button>
]; ];
// handle gallery debug // change active page indicator beneath gallery
useEffect(() => { useEffect(() => {
setRendered([ setRendered([
galleryButtons[gallery[0]], galleryButtons[gallery[1]] galleryButtons[gallery[0]], galleryButtons[gallery[1]]
]); ]);
for (let each of allCardRefs) { for (let each of allCardRefs) {
// inactive style
each.current.style.backgroundColor = '#ede7f6'; each.current.style.backgroundColor = '#ede7f6';
} }
for (let each of gallery) { for (let each of gallery) {
allCardRefs[each].current.style.backgroundColor = "#283593"; // active style
allCardRefs[each].current.style.backgroundColor = "#673ab7";
} }
}, [gallery]); }, [gallery]);
// gallery page change logic
const handleDecrement = () => { const handleDecrement = () => {
let newState = []; let newState = [];
for (let each of gallery) { for (let each of gallery) {
@@ -82,19 +91,19 @@ export default function Welcome() {
setGallery(newState); setGallery(newState);
} }
// render
return ( return (
<div style={pageTheme}> <div className="welcome-page" style={pageTheme}>
<div className="landing"> <Card sx={mainHeaderCard} elevation={5}>
<Avatar alt="Mikayla Dobson" src={profile} sx={{width: 110, height: 110}} /> <Avatar alt="Mikayla Dobson" src={profile} sx={{width: 110, height: 110}} />
<h3>Hi, my name is Mikayla! I'm a junior-level full stack web developer.</h3> <h3>Hi, my name is Mikayla! I'm a junior-level full stack web developer.</h3>
<p>I excel in building well-structured and maintainable web applications, managing algorithmic complexity, <p>I excel in building well-structured and maintainable web applications, managing algorithmic complexity,
and adapting my workflow to fit the needs of any environment I should find myself in. and adapting my workflow to fit the needs of any environment I should find myself in.
</p> </p>
</div> <h4 className="do-stuff">Thanks for visiting! Feel free to peruse below:</h4>
</Card>
<h3 className="do-stuff">Thanks for visiting! Feel free to peruse below:</h3> <Divider orientation="horizontal" sx={dividerStyle} />
<Divider orientation="horizontal" sx={{width: '90%', color: '#000000', borderWidth: '2px'}} />
<div style={galleryTheme} className="gallery"> <div style={galleryTheme} className="gallery">
<div style={galleryRow}> <div style={galleryRow}>
@@ -111,7 +120,7 @@ export default function Welcome() {
</div> </div>
</div> </div>
<Divider orientation="horizontal" sx={{width: '90%', color: '#000000', borderWidth: '2px'}} /> <Divider orientation="horizontal" sx={dividerStyle} />
<footer sx={welcomeFooter}> <footer sx={welcomeFooter}>
<p>&copy; Mikayla Dobson 2022</p> <p>&copy; Mikayla Dobson 2022</p>

View File

@@ -3,6 +3,7 @@ import { indigo, blue, pink, green, deepPurple, purple } from '@mui/material/col
export const DocumentStyle = { export const DocumentStyle = {
htmlTheme: { htmlTheme: {
backgroundColor: purple[100], backgroundColor: purple[100],
height: '100vh',
}, },
linkStyle: { linkStyle: {
color: deepPurple[300], color: deepPurple[300],
@@ -25,9 +26,9 @@ export const DocumentStyle = {
display: 'flex', display: 'flex',
justifyContent: 'center', justifyContent: 'center',
color: deepPurple[50], color: deepPurple[50],
backgroundColor: deepPurple[500], backgroundColor: deepPurple[400],
'&:hover': { '&:hover': {
backgroundColor: indigo[800], backgroundColor: deepPurple[500],
} }
}, },
galleryCards: { galleryCards: {
@@ -36,7 +37,7 @@ export const DocumentStyle = {
margin: '0.8rem' margin: '0.8rem'
}, },
dividerStyle: { dividerStyle: {
width: '90%', width: '80%',
color: '#000000', color: '#000000',
borderWidth: '2px' borderWidth: '2px'
} }
@@ -51,12 +52,25 @@ export const WelcomePage = {
alignItems: 'center', alignItems: 'center',
overflowX: 'hidden' overflowX: 'hidden'
}, },
mainHeaderCard: {
display: 'flex',
margin: '2rem',
width: '35vw',
padding: '1rem',
flexDirection: 'column',
backgroundColor: pink[50],
alignItems: 'center',
fontSize: '1.2rem',
},
galleryTheme: { galleryTheme: {
display: 'flex', display: 'flex',
flexDirection: 'column', flexDirection: 'column',
width: '95vw', backgroundColor: indigo[800],
border: '1px solid purple',
width: '70vw',
height: '18rem', height: '18rem',
padding: '3rem', padding: '3rem',
margin: '2rem',
}, },
galleryRow: { galleryRow: {
display: 'flex', display: 'flex',