这是indexloc提供的服务,不要输入任何密码
Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
40 changes: 21 additions & 19 deletions src/components/articles.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ import rehypeRaw from 'rehype-raw';

// Wrapper component to access URL parameters
const ArticlesWrapper = (props) => {
const params = useParams();
return <Articles {...props} slug={params.slug} />;
const params = useParams();
return <Articles {...props} slug={params.slug} />;
};

function parseMetadata(text) {
Expand Down Expand Up @@ -105,11 +105,10 @@ class Articles extends Component {
<button
key={i}
onClick={() => this.handlePageChange(i)}
className={`px-3 py-1 mx-1 rounded ${
currentPage === i
className={`px-3 py-1 mx-1 rounded ${currentPage === i
? 'bg-blue-500 text-white'
: 'bg-gray-200 text-gray-700 hover:bg-gray-300'
}`}
}`}
>
{i}
</button>
Expand Down Expand Up @@ -146,6 +145,9 @@ class Articles extends Component {
<div className="article">
<div className="article-header">
<h1>{article.metadata.title}</h1>
<small className="text-muted">
Published: <time dateTime={article.metadata.date}>{article.metadata.date}</time>
</small>
</div>
<div className="article-body">
<ReactMarkdown children={article.text} skipHtml={false} rehypePlugins={[rehypeRaw]} />
Expand All @@ -157,22 +159,22 @@ class Articles extends Component {
</div>
</div>
<div className="col-md-4">
<div className="section-title">
<h2>Article List</h2>
</div>
<div className="article-list">
<ul>
{articles.map((article) => (
<li key={article.metadata.slug}>
<Link to={`/articles/${article.metadata.slug}`}>
{article.metadata.title}
</Link>
</li>
))}
</ul>
<div className="section-title">
<h2>Article List</h2>
</div>
<div className="article-list">
<ul>
{articles.map((article) => (
<li key={article.metadata.slug}>
<Link to={`/articles/${article.metadata.slug}`}>
{article.metadata.title}
</Link>
</li>
))}
</ul>
</div>
</div>
</div>
</div>
</div>
</section>
);
Expand Down
18 changes: 17 additions & 1 deletion src/components/resume.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -24,10 +24,26 @@ export default class Resume extends Component {
</p>
</div>
<h3 className="resume-title">Professional Experience</h3>
<div className="resume-item">
<h4>Head of Integrated Digital Engagement</h4>
<h5>X bigly Labs · Full-time</h5>
<h5>Aug 2025 - Present</h5>
<p>
<em>City of Johannesburg, Gauteng, South Africa · Hybrid</em>
</p>
<ul>
<li>Develop and implement a comprehensive digital strategy roadmap aligned with Dis-Chem’s business objectives</li>
<li>Drive the digital transformation agenda, ensuring alignment across departments and stakeholders</li>
<li>Oversee the transition to new digital platforms, ensuring seamless integration with existing systems</li>
<li>Identify, prioritise, and implement innovative digital features to enhance operational efficiency and customer engagement</li>
<li>Lead e-commerce optimisation efforts, focusing on improving website functionality, conversion rates, and customer satisfaction</li>
<li>Map and refine the customer journey across digital touchpoints to create seamless and personalised shopping experiences</li>
</ul>
</div>
<div className="resume-item">
<h4>Product Head: GenAI</h4>
<h5>Capitec · Full-time</h5>
<h5>Dec 2024 - Current</h5>
<h5>Dec 2024 - Aug 2025</h5>
<p>
<em>City of Johannesburg, Gauteng, South Africa · Hybrid</em>
</p>
Expand Down