Skip to content

Commit

Permalink
Start Header, Revise ESLint Rules, Start Custom Styling, Update Packages
Browse files Browse the repository at this point in the history
  • Loading branch information
anthonyjesmok committed Dec 26, 2023
1 parent 4e5538b commit 20ce726
Show file tree
Hide file tree
Showing 10 changed files with 124 additions and 37 deletions.
30 changes: 26 additions & 4 deletions .eslintrc.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"env": {
"browser": true,
"es2021": true
},
},
"extends": [
"next/core-web-vitals",
"airbnb",
Expand All @@ -15,13 +15,35 @@
"parserOptions": {
"ecmaFeatures": {
"jsx": true
},
"ecmaVersion": "latest",
},
"ecmaVersion": 2023,
"sourceType": "module"
},
"rules": {
"react/function-component-definition": "off",
"react/react-in-jsx-scope": "off",
"@next/next/no-img-element": "off",
"react/jsx-filename-extension": [2, { "extensions": [".js", ".jsx", ".ts", ".tsx"] }]
"react/jsx-filename-extension": [
2,
{ "extensions": [".js", ".jsx", ".ts", ".tsx"] }
],
"react/prop-types": "off", // Disable prop-types check when using TypeScript
"@typescript-eslint/explicit-module-boundary-types": "off", // Allow omitting return types on functions
"import/extensions": [
"error",
"ignorePackages",
{
"js": "never",
"jsx": "never",
"ts": "never",
"tsx": "never"
}
],
"import/no-unresolved": "off" // Disable unresolved import errors for TypeScript paths
},
"settings": {
"import/resolver": {
"typescript": {} // Resolve TypeScript paths properly
}
}
}
11 changes: 0 additions & 11 deletions components/layout/NavHeader.jsx

This file was deleted.

14 changes: 14 additions & 0 deletions components/layout/header/HeaderMenuItems.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
import React, { FC } from 'react';
import { HeaderMenuItem } from '@carbon/react';

const HeaderMenuItems: FC = () => (
<>
<HeaderMenuItem href="/">Home</HeaderMenuItem>
<HeaderMenuItem href="/work">Work</HeaderMenuItem>
<HeaderMenuItem href="/projects">Projects</HeaderMenuItem>
<HeaderMenuItem href="/talks">Talks</HeaderMenuItem>
<HeaderMenuItem href="/writing">Writing</HeaderMenuItem>
</>
);

export default HeaderMenuItems;
54 changes: 54 additions & 0 deletions components/layout/header/NavHeader.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
import {
Header,
HeaderContainer,
HeaderName,
HeaderNavigation,
HeaderMenuButton,
SkipToContent,
SideNav,
SideNavItems,
HeaderSideNavItems,
HeaderGlobalBar,
HeaderGlobalAction,
} from '@carbon/react';

import HeaderMenuItems from './HeaderMenuItems';

export default function NavHeader() {
return (
<HeaderContainer render={({ isSideNavExpanded, onClickSideNavExpand }) => (
<Header aria-label="Anthony Jesmok">
<SkipToContent />
<HeaderMenuButton
aria-label="Open menu"
onClick={onClickSideNavExpand}
isActive={isSideNavExpanded}
/>
<HeaderName href="/" prefix="">
Anthony Jesmok
</HeaderName>
<HeaderNavigation aria-label="Site Menu">
<HeaderMenuItems />
</HeaderNavigation>
<SideNav
aria-label="Mobile Navigation"
expanded={isSideNavExpanded}
isPersistent={false}
placeholder="Mobile Navigation"
>
<SideNavItems>
<HeaderSideNavItems>
<HeaderMenuItems />
</HeaderSideNavItems>
</SideNavItems>
</SideNav>
<HeaderGlobalBar>
<HeaderGlobalAction aria-label="Contact Me">
<p>TODO</p>
</HeaderGlobalAction>
</HeaderGlobalBar>
</Header>
)}
/>
);
}
7 changes: 0 additions & 7 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,6 @@
"devDependencies": {
"@babel/eslint-parser": "^7.23.3",
"@firebase/performance": "^0.6.4",
"@next/font": "^13.5.6",
"@types/node": "^20.10.5",
"@types/react": "^18.2.45",
"@typescript-eslint/eslint-plugin": "^6.16.0",
Expand Down
16 changes: 7 additions & 9 deletions pages/_app.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,11 @@ import { getPerformance } from '@firebase/performance';
import firebase from '../util/firebase';

// Styles
import { Theme } from '@carbon/react';
import '../styles/app.scss';

// Components
import NavHeader from '../components/layout/NavHeader';
import NavHeader from '../components/layout/header/NavHeader.tsx';
import { Content } from '@carbon/react';

// Initialize App
function MarshmallowApp({ Component, pageProps }) {
Expand All @@ -25,14 +25,12 @@ function MarshmallowApp({ Component, pageProps }) {

// Return App
return (
<Theme theme="g90">
<header>
<NavHeader />
</header>
<main>
<>
<NavHeader />
<Content>
<Component {...pageProps} />
</main>
</Theme>
</Content>
</>
)
}

Expand Down
12 changes: 9 additions & 3 deletions pages/index.tsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import Head from 'next/head';
import { Grid, Column } from '@carbon/react';

// export async function getStaticProps() {}

Expand All @@ -8,9 +9,14 @@ export default function IndexPage() {
<Head>
<title>Anthony Jesmok | Home | jesmok.xyz</title>
</Head>
<div>
<p>Something will be here soon.</p>
</div>
<Grid fullWidth>
<Column>
<h1>Home</h1>
</Column>
<Column>
<h1>Image</h1>
</Column>
</Grid>
</>
);
}
14 changes: 13 additions & 1 deletion styles/app.scss
Original file line number Diff line number Diff line change
@@ -1 +1,13 @@
@use '@carbon/react';
/* Import the Carbon Framework With Custom Colors */
@use '@carbon/react' with (
$theme: (
background: #083F63,
text-primary: #FFFFFF,
text-secondary: #FFFFFF,
text-inverse: #000000,
)
);

/* Use the Carbon Grid */
@use '@carbon/grid';
@include grid.flex-grid();
2 changes: 1 addition & 1 deletion tsconfig.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
"skipLibCheck": true,
"strict": false,
"forceConsistentCasingInFileNames": true,
"noEmit": true,
"noEmit": false,
"incremental": true,
"esModuleInterop": true,
"module": "esnext",
Expand Down

0 comments on commit 20ce726

Please sign in to comment.