Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MarkBind Template for Student Portfolio #2398

Merged
merged 62 commits into from
Apr 8, 2024
Merged
Show file tree
Hide file tree
Changes from 26 commits
Commits
Show all changes
62 commits
Select commit Hold shift + click to select a range
a707f53
Add default files for template
jingting1412 Jan 29, 2024
e28ccbb
Basic structure
jingting1412 Feb 2, 2024
aa05707
Add content for template
jingting1412 Feb 2, 2024
7f295f1
Merge branch 'MarkBind:master' into portfolioTemplate
jingting1412 Feb 2, 2024
665f5dc
Fix typo
jingting1412 Feb 2, 2024
84f1f46
Update userguide
jingting1412 Feb 3, 2024
8a7442a
Add link to netlify
jingting1412 Feb 3, 2024
2e49d48
implement changes
jingting1412 Feb 11, 2024
4272144
Change variable
jingting1412 Feb 11, 2024
b276680
Merge branch 'master' into portfolioTemplate
jingting1412 Feb 11, 2024
e181ca3
Merge branch 'master' into portfolioTemplate
jingting1412 Feb 14, 2024
3023603
Merge branch 'MarkBind:master' into portfolioTemplate
jingting1412 Feb 16, 2024
b35ccbe
Shift skills section
jingting1412 Feb 16, 2024
be14ede
Fix variable mistake
jingting1412 Feb 16, 2024
f342c87
Add functional test
jingting1412 Feb 19, 2024
d4b2683
Merge branch 'MarkBind:master' into portfolioTemplate
jingting1412 Feb 19, 2024
141436a
Merge branch 'MarkBind:master' into portfolioTemplate
jingting1412 Mar 8, 2024
e3c3ba1
Remove previous tests
jingting1412 Mar 8, 2024
51707b6
Update tests
jingting1412 Mar 8, 2024
15becb6
Setup basic structure
jingting1412 Mar 8, 2024
26c87f5
Add content
jingting1412 Mar 9, 2024
76c8cd4
Add content for project
jingting1412 Mar 9, 2024
a2db2cb
Merge branch 'MarkBind:master' into portfolioTemplate
jingting1412 Mar 10, 2024
5102863
Fix typo
jingting1412 Mar 10, 2024
31daffe
Implement review changes
jingting1412 Mar 10, 2024
168c494
Remove frontmatter
jingting1412 Mar 10, 2024
0302105
Content changes
jingting1412 Mar 11, 2024
6291d53
Improve layout
jingting1412 Mar 11, 2024
b7c7c6f
Fix typo
jingting1412 Mar 11, 2024
83a792f
Merge branch 'MarkBind:master' into portfolioTemplate
jingting1412 Mar 12, 2024
32e28f5
Merge branch 'MarkBind:master' into portfolioTemplate
jingting1412 Mar 15, 2024
0b8154d
Merge branch 'MarkBind:master' into portfolioTemplate
jingting1412 Mar 20, 2024
9379471
Change content
jingting1412 Mar 20, 2024
2dc9d74
Add content
jingting1412 Mar 20, 2024
23bd94c
Add functional test
jingting1412 Mar 20, 2024
b3cd4b2
Add functional test
jingting1412 Mar 20, 2024
d473352
Merge branch 'MarkBind:master' into portfolioTemplate
jingting1412 Mar 20, 2024
e5479b0
Update content and test
jingting1412 Mar 21, 2024
4da0e66
Update iframe width
jingting1412 Mar 21, 2024
e29cc29
Update test
jingting1412 Mar 21, 2024
3df3d95
Update packages/core/template/portfolio/index.md
jingting1412 Mar 30, 2024
71884e9
Merge branch 'MarkBind:master' into portfolioTemplate
jingting1412 Mar 30, 2024
d13495a
Merge branch 'master' into portfolioTemplate
jingting1412 Mar 30, 2024
f9f8262
Implement review suggestions
jingting1412 Mar 30, 2024
7f013b6
Update tests
jingting1412 Mar 30, 2024
e3c41f8
Add email link
jingting1412 Mar 30, 2024
1dce15e
Update tests
jingting1412 Mar 30, 2024
7800aee
Merge branch 'MarkBind:master' into portfolioTemplate
jingting1412 Apr 2, 2024
83e88e5
Update packages/cli/test/functional/test_site_templates/test_portfoli…
jingting1412 Apr 3, 2024
d2d5230
Update packages/cli/test/functional/test_site_templates/test_portfoli…
jingting1412 Apr 3, 2024
299f4a4
Update packages/cli/test/functional/test_site_templates/test_portfoli…
jingting1412 Apr 3, 2024
49245a5
Add links to projects
jingting1412 Apr 3, 2024
37dec16
Change name for post
jingting1412 Apr 3, 2024
612cbd9
Change look of experience
jingting1412 Apr 3, 2024
62a8fad
Update tests
jingting1412 Apr 3, 2024
4bf2a7a
Implement review changes
jingting1412 Apr 4, 2024
c83b6dd
Update tests
jingting1412 Apr 4, 2024
6cfe7b9
Update post
jingting1412 Apr 4, 2024
2aeb573
Remove unused image
jingting1412 Apr 4, 2024
b7dba93
Fix broken link
jingting1412 Apr 4, 2024
e3438a9
Merge branch 'MarkBind:master' into portfolioTemplate
jingting1412 Apr 4, 2024
f3ded34
Fix merge conflicts
jingting1412 Apr 8, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions docs/userGuide/templates.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,8 @@ Name | Template key | Description | Quick Deploy
---- | ------- | ----------- | ------------
Default | `default` | Default template if `--template` is unspecified. Includes core features such as site and page navigation for a more convenient quick start. | <a href="https://app.netlify.com/start/deploy?repository=https://github.com/MarkBind/init-typical-netlify"><img src="https://www.netlify.com/img/deploy/button.svg" /></a>
Minimal | `minimal` | Minimalistic template that gets you started quickly. | <a href="https://app.netlify.com/start/deploy?repository=https://github.com/MarkBind/init-minimal-netlify"><img src="https://www.netlify.com/img/deploy/button.svg" /></a>
Portfolio | `portfolio` | Portfolio template to quickly build your portfolio. | <a href=""><img src="https://www.netlify.com/img/deploy/button.svg" /></a>

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey Markbind team! I've been following this issue for quite a while but never got to see a preview of the Portfolio template. Maybe that is something you can consider adding to the documentation, perhaps a screenshot?

Copy link
Contributor

@kaixin-hc kaixin-hc Mar 11, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good point - it shouldn't be too hard to add a modal with image examples 👀 heres a short video i took when i was reviewing if you'd like to add your comments as well (already somewhat outdated ya)

Screen.Recording.2024-03-10.at.2.58.47.PM.mov

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks! I took a short look during the lecture today too, and it looks clean!

Not sure if this is possible on Markbind, but I think some of these expandable cards could be open by default? For example, the skills section, and maybe a few selected projects to emphasize the best ones.

I think the intro section ("My name is...") could be redesigned slightly if it is within the scope of this PR. For example, center the text, add a one-line intro, add call-to-action button(s) - for example, 'View Resume', or 'About Me', or the icon buttons for GitHub and LinkedIn can be added here

Just a few design suggestions, feel free to ignore

Copy link
Contributor Author

@jingting1412 jingting1412 Mar 11, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi Charisma! Thank you for your feedback. I think I can definitely change the skills section so the panels are open by default. For the projects section, each project is shown on an individual card so they are already open by default. I looked at your website again and I think the "featured projects" and "other projects" sections are interesting. Maybe the current big cards can be for featured projects, and I can add a grid of smaller cards underneath that to show other projects.

I think the "Hello!" section looks better with the text aligned to the left? It looks neater in my opinion. 😓
But I think I can def move the links to this header section

Also sorry about not having a netlify link previously, I've since set it up here: https://portfolio-template-markbind.netlify.app/

jingting1412 marked this conversation as resolved.
Show resolved Hide resolved


{% from "njk/common.njk" import previous_next %}
{{ previous_next('addingNavigationButtons', '') }}
23 changes: 23 additions & 0 deletions packages/core/template/portfolio/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
lerna-debug.log*
_markbind/logs/

# Dependency directories
node_modules/

# Production
_site/

# Env
.env
.env.local

# IDE configs
.vscode/
.idea/*
*.iml
7 changes: 7 additions & 0 deletions packages/core/template/portfolio/404.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
<frontmatter>
title: Page not found
layout: 404.md
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this accessible at any point? HAHA

</frontmatter>

-><p style="font-size: 10rem">404</p><-
-><p style="font-size: 1.5rem">File not found<br>Click <a href="/">here</a> to go back to the home page.</p><-
1 change: 1 addition & 0 deletions packages/core/template/portfolio/_markbind/layouts/404.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
<div>{{ content }}</div>
43 changes: 43 additions & 0 deletions packages/core/template/portfolio/_markbind/layouts/default.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
<head-bottom>
<link rel="stylesheet" href="{{baseUrl}}/stylesheets/main.css">
</head-bottom>

<header sticky>
<navbar type="dark">
<a slot="brand" href="{{baseUrl}}/index.html" title="Home" class="navbar-brand">Your Name</a>
<li><a href="{{baseUrl}}/index.html#skills" class="nav-link">Skills</a></li>
<li><a href="{{baseUrl}}/index.html#experience" class="nav-link">Experience</a></li>
<dropdown header="Projects" class="nav-link">
<li><a href="{{baseUrl}}/index.html#project-1" class="dropdown-item">Project1</a></li>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
<li><a href="{{baseUrl}}/index.html#project-1" class="dropdown-item">Project1</a></li>
<li><a href="{{baseUrl}}/index.html#project-1" class="dropdown-item">Project 1</a></li>

<li><a href="{{baseUrl}}/index.html#project-2" class="dropdown-item">Project2</a></li>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
<li><a href="{{baseUrl}}/index.html#project-2" class="dropdown-item">Project2</a></li>
<li><a href="{{baseUrl}}/index.html#project-2" class="dropdown-item">Project 2</a></li>

</dropdown>
<li><a href="https://github.com/MarkBind/markbind" target="_blank" class="nav-link">
<i class="fa-brands fa-github fa-lg"></i>
</a>
</li>
<li>
<a href="https://www.linkedin.com/school/national-university-of-singapore/" target="_blank" class="nav-link">
<i class="fa-brands fa-linkedin fa-lg"></i>
</a>
</li>
<li slot="right">
<form class="navbar-form">
<searchbar :data="searchData" placeholder="Search" :on-hit="searchCallback" menu-align-right></searchbar>
</form>
</li>
</navbar>
</header>

<div id="flex-body">
<div id="content-wrapper">
{{ content }}
</div>
<scroll-top-button></scroll-top-button>
</div>

<footer>
<!-- Support MarkBind by including a link to us on your landing page! -->
<div class="text-center">
<small>[Generated by {{MarkBind}}]</small>
</div>
</footer>
4 changes: 4 additions & 0 deletions packages/core/template/portfolio/_markbind/variables.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
<variable name="name">[NAME]</variable>
<variable name="javascript"><thumbnail src='../contents/assets/JavaScript.svg' size="50"/></variable>
<variable name="typescript"><thumbnail src='../contents/assets/Typescript.svg' size="50"/></variable>
<variable name="vue"><thumbnail src='../contents/assets/Vue.svg' size="50"/></variable>
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 2 additions & 0 deletions packages/core/template/portfolio/contents/assets/Vue.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
23 changes: 23 additions & 0 deletions packages/core/template/portfolio/contents/experience.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Experience

<panel type="seamless" header="Experience 1" no-close minimized>
<md>**Description of experience (Name of role, duration, etc.)**
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

maybe you could have a badge with the date since normally you would list expereinces in chronological order

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This could be even better with a full blown example of the experience
I was thinking like

**Company**: Full stack engineer
From {date badge} to {date badge}

Technical skills: 
- ....

What do you think


- Use concise bulletpoints
</md>
<div class="container">
{{vue}}
{{typescript}}
</div>
</panel>
<br/>
<panel type="seamless" header="Experience 2" no-close minimized>
<md>**Description of experience (Name of role, duration, etc.)**

- Use concise bulletpoints
</md>
<div class="container">
{{javascript}}
</div>
</panel>

12 changes: 12 additions & 0 deletions packages/core/template/portfolio/contents/project1.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
<div class="card mb-3">
<h3 class="card-header">Project 1</h3>
<pic src="../contents/assets/MarkbindExample.png" width="500" alt="project-display"/>
<div class="card-body">
<p class="card-text">Some quick example text to build on the card title and make up the bulk of the card's content.</p>
{{typescript}}
</div>
<div class="card-body">
<a href="#" class="btn btn-primary">View on Github</a>
<a href="#" class="btn btn-primary">View Devpost</a>
</div>
</div>
12 changes: 12 additions & 0 deletions packages/core/template/portfolio/contents/project2.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
<div class="card mb-3">
<h3 class="card-header">Project 2</h3>
<pic src="../contents/assets/MarkbindExample.png" width="500" alt="project-display"/>
<div class="card-body">
<p class="card-text">Some quick example text to build on the card title and make up the bulk of the card's content.</p>
{{javascript}}
</div>
<div class="card-body">
<a href="#" class="btn btn-primary">View on Github</a>
<a href="#" class="btn btn-primary">View Devpost</a>
</div>
</div>
4 changes: 4 additions & 0 deletions packages/core/template/portfolio/contents/projects.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# Projects

<include src="project1.md"/>
<include src="project2.md"/>
20 changes: 20 additions & 0 deletions packages/core/template/portfolio/contents/skills.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# Skills

This is where you can give a quick overview of the technologies and frameworks you know using our <a href="https://markbind.org/userGuide/components/imagesAndDiagrams.html#thumbnails" target="_blank">thumbnail feature</a> or our <a href="https://markbind.org/userGuide/formattingContents.html#icons" target="_blank">icons</a>.
</p>
<panel header="Example using thumbnails" minimized>
<box type="info">These thumbnails are available as variables to use anywhere in this page!</box>
{{ javascript }}
{{ typescript }}
{{ vue }}
</panel>
<br/>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think you don't need a linebreak here, it's fine for it to all be on the same line?

<panel header="Example using icons" minimized>
<box type="warning">
Some icons are not available in the libraries MarkBind supports! Please ensure that
the desired icons are available beofre choosing this option. For more information regarding
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
the desired icons are available beofre choosing this option. For more information regarding
the desired icons are available before choosing this option. For more information regarding

icons, please refer to <a href="https://markbind.org/userGuide/formattingContents.html#icons" target="_blank">this section of our User Guide</a>
</box>
<i class="fa-brands fa-square-js fa-2xl"></i>
<i class="fa-brands fa-vuejs fa-2xl"></i>
</panel>
43 changes: 43 additions & 0 deletions packages/core/template/portfolio/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
<frontmatter>
title: Home Page
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Keep in mind the use of frontmatter :https://markbind.org/userGuide/tweakingThePageStructure.html#frontmatter and omitFrontmatter

(btw - if you're looking for more issues to pick up, you can consider adding to the discussion here: #2295 )

Anyway, because of the use of includes in this page, the page title is not Home Page but that of the last included file. Could you go through and remove irrelevant frontmatter? Might be worthwhile to also include in a code comment the purpose of frontmatter on this page

layout: default.md
</frontmatter>

<br>

<div class="bg-dark text-white px-2 py-5 mb-4">
<div class="container">
<h1 class="display-5 no-index"><md>:wave:</md> Hello!<br>I'm {{ name }}</h1>
<p class="lead">Welcome to my porfolio!</p>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
<p class="lead">Welcome to my porfolio!</p>
<p class="lead">Welcome to my portfolio!</p>

</div>
</div>

<box type="tip">
Want to change the theme? Explore more themes and other components offered by MarkBind in our <a href="https://markbind.org/userGuide/authoringContents.html" target="_blank">user guide here</a>
jingting1412 marked this conversation as resolved.
Show resolved Hide resolved
</box>

---

## About me

<p>
This is where you can add a picture of yourself and a brief introduction. This can be a good place to
use <tooltip content="Add more information here" placement="top">tooltips</tooltip>, or
<md>[add relevant links](https://markbind.org/userGuide/formattingContents.html#links)</md>.
</p>

<img src='./contents/assets/default_profile_pic.png' alt='default-profile-pic'/>

---

<include src="contents/skills.md"/>

---

<include src="contents/experience.md"/>

---

<include src="contents/projects.md"/>


32 changes: 32 additions & 0 deletions packages/core/template/portfolio/site.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
{
"baseUrl": "",
"titlePrefix": "",
"titleSuffix": "",
"ignore": [
"_markbind/layouts/*",
"_markbind/logs/*",
"_site/*",
"site.json",
"*.md",
"*.njk",
".git/*",
".gitignore",
"node_modules/*"
],
"pagesExclude": ["node_modules/*"],
"pages": [
{
"src": "index.md",
"title": "Portfolio"
},
{
"glob": ["**/index.md"]
}
],
"deploy": {
"message": "Site Update."
},
"style": {
"bootstrapTheme": "bootswatch-flatly"
}
}
135 changes: 135 additions & 0 deletions packages/core/template/portfolio/stylesheets/main.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,135 @@
mark {
background-color: #ff0;
border-radius: 5px;
padding-top: 0;
padding-bottom: 0;
}

.indented {
padding-left: 20px;
}

.theme-card img {
width: 100%;
}

/* Scrollbar */

.slim-scroll::-webkit-scrollbar {
width: 5px;
}

.slim-scroll::-webkit-scrollbar-thumb {
background: #808080;
border-radius: 20px;
}

.slim-scroll::-webkit-scrollbar-track {
background: transparent;
border-radius: 20px;
}

.slim-scroll-blue::-webkit-scrollbar {
width: 5px;
}

.slim-scroll-blue::-webkit-scrollbar-thumb {
background: #00b0ef;
border-radius: 20px;
}

.slim-scroll-blue::-webkit-scrollbar-track {
background: transparent;
border-radius: 20px;
}

/* Layout containers */

#flex-body {
display: flex;
flex: 1;
align-items: start;
}

#content-wrapper {
flex: 1;
margin: 0 auto;
min-width: 0;
max-width: 1000px;
overflow-x: auto;
padding: 0.8rem 20px 0;
transition: 0.4s;
}

#site-nav,
#page-nav {
display: flex;
flex-direction: column;
position: sticky;
top: var(--sticky-header-height);
flex: 0 0 auto;
max-width: 300px;
max-height: calc(100vh - var(--sticky-header-height));
width: 300px;
}

#site-nav {
border-right: 1px solid lightgrey;
padding-bottom: 20px;
z-index: 999;
}

.site-nav-top {
margin: 0.8rem 0;
padding: 0 12px 12px;
}

.nav-component {
overflow-y: auto;
}

#page-nav {
border-left: 1px solid lightgrey;
}

@media screen and (width <= 1299.98px) {
#page-nav {
display: none;
}
}

/* Bootstrap medium(md) responsive breakpoint */
@media screen and (width <= 991.98px) {
#site-nav {
display: none;
}
}

/* Bootstrap small(sm) responsive breakpoint */
@media (width <= 767.98px) {
.indented {
padding-left: 10px;
}

#content-wrapper {
padding: 0 10px;
}
}

/* Bootstrap extra small(xs) responsive breakpoint */
@media screen and (width <= 575.98px) {
#site-nav {
display: none;
}
}

/* Hide site navigation when printing */
@media print {
#site-nav {
display: none;
}

#page-nav {
display: none;
}
}
Loading