Skip to content

Commit

Permalink
feat: add local source for projects
Browse files Browse the repository at this point in the history
  • Loading branch information
kleva-j committed Jan 21, 2025
1 parent ba57626 commit 27063fc
Show file tree
Hide file tree
Showing 2 changed files with 134 additions and 7 deletions.
10 changes: 3 additions & 7 deletions src/components/Works.tsx
Original file line number Diff line number Diff line change
@@ -1,25 +1,21 @@
import { FeaturedCard } from '@/components/FeaturedCard';
import { SectionWrapper } from '@/components/hoc/SectionWrapper';
import { ProjectList } from '@/components/ProjectList';
import { useFetch } from '@/libs/hooks';

const url = import.meta.env.VITE_API_URL;
import { projects } from '@/libs/utils/constants';

export const Works = SectionWrapper(
() => {
const { data: works } = useFetch(url + '/api/Projects/');

return (
<div>
<h2 className="relative flex items-center before:relative [counter-increment:section] before:[content:'0'counter(section)'.'] before:text-teal-500 before:mr-[5px] mt-[10px] mb-[40px] whitespace-nowrap text-2xl before:font-mono font-semibold text-[#ccd6f6] after:content-[''] after:ml-[10px] after:w-full after:max-w-[300px] after:h-px after:relative after:block after:bg-[#233554]">
Some Things I&rsquo;ve Built
</h2>
<ul>
{works.slice(0, 3).map((item) => (
{projects.slice(0, 3).map((item) => (
<FeaturedCard key={item.title} {...item} />
))}
</ul>
<ProjectList works={works} />
<ProjectList works={projects} />
</div>
);
},
Expand Down
131 changes: 131 additions & 0 deletions src/libs/utils/constants.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,131 @@
export const projects = [
{
id: '64a825f12a7d9f3181f3d1cb',
updatedAt: '2023-08-21T17:53:23.955Z',
createdAt: '2023-07-07T14:48:05.430Z',
title: 'Notepad',
slug: 'notepad',
tagline:
'Notepad is a web-based note-taking app for developers. It is a static site without a database and does not sync your notes to the cloud. The notes are persisted temporarily in local storage, but you can download all notes in markdown format as a zip.',
url: 'https://notepad-nu.vercel.app/',
banner_img:
'https://images.pexels.com/photos/2457284/pexels-photo-2457284.jpeg?auto=compress&cs=tinysrgb&w=640&h=480&dpr=1',
slider: [],
github_url: 'https://github.com/kleva-j/notepad',
highlight: 'show',
},
{
id: '64a825942a7d9f3181f3d1ba',
updatedAt: '2023-07-07T14:46:50.520Z',
createdAt: '2023-07-07T14:46:50.520Z',
title: 'Gitline',
slug: 'gitline',
tagline:
'Gitline is a remote job board that promotes overs 50K record jobs from the US, UK, Netherland, Romania, Germany and Switzerland employers.',
url: 'https://gitline-six.vercel.app/',
banner_img:
'https://images.pexels.com/photos/1545505/pexels-photo-1545505.jpeg?auto=compress&cs=tinysrgb&w=640&h=427&dpr=1',
slider: [],
github_url: 'https://github.com/kleva-j/Gitline',
highlight: 'show',
},
{
id: '64a824932a7d9f3181f3d187',
updatedAt: '2023-07-07T14:41:59.968Z',
createdAt: '2023-07-07T14:41:59.968Z',
title: 'Codetips',
slug: 'codetips',
tagline: 'A dev blog platform for code tips, code samples/materials and tutorials in coding/programming.',
url: 'https://frontendtips.netlify.app/',
banner_img:
'https://images.pexels.com/photos/2457278/pexels-photo-2457278.jpeg?auto=compress&cs=tinysrgb&w=640&h=427&dpr=1',
slider: [],
github_url: 'https://github.com/kleva-j/codetips',
highlight: 'show',
},
{
id: '64a822782a7d9f3181f3d13f',
updatedAt: '2023-07-06T23:00:00.000Z',
createdAt: '2023-07-06T23:00:00.000Z',
title: 'HackerNews',
slug: 'hackernews',
tagline: 'A much clumsy clone of the HackerNews platform.',
url: 'https://hacker-news-gamma.vercel.app/',
banner_img:
'https://images.pexels.com/photos/1292998/pexels-photo-1292998.jpeg?auto=compress&cs=tinysrgb&w=640&h=427&dpr=1',
slider: [],
github_url: 'https://github.com/kleva-j/HackerNews',
highlight: 'show',
},
{
id: '64a823192a7d9f3181f3d158',
updatedAt: '2023-08-21T17:59:14.048Z',
createdAt: '2023-07-06T23:00:00.000Z',
title: 'Github Timeline',
slug: 'github-timeline-v1',
tagline:
"GitHub Timeline combines API and graphical representation of information to create a visual history of a user's GitHub activity.",
url: 'https://github-timeline-gb8qpwb5h-kleva-j.vercel.app',
banner_img:
'https://images.pexels.com/photos/247671/pexels-photo-247671.jpeg?auto=compress&cs=tinysrgb&w=640&h=427&dpr=1',
slider: [],
github_url: 'https://github.com/kleva-j/Github-Timeline',
highlight: 'show',
},
{
id: '64a8240e2a7d9f3181f3d176',
updatedAt: '2023-07-06T23:00:00.000Z',
createdAt: '2023-07-06T23:00:00.000Z',
title: 'Terminal Chat App',
slug: 'terminal-chat-app',
tagline:
'Terminal Chat App is a command-line chat application, works with socketIO to broadcast messages and send private chat messages.',
url: '#',
banner_img:
'https://images.pexels.com/photos/924824/pexels-photo-924824.jpeg?auto=compress&cs=tinysrgb&w=640&h=427&dpr=1',
slider: [],
github_url: 'https://github.com/kleva-j/Terminal_ChatApp',
highlight: 'show',
},
{
id: '64a72f17e046ad5810e0d7db',
updatedAt: '2023-08-04T07:08:02.748Z',
createdAt: '2023-07-05T23:00:00.000Z',
title: 'Todoist',
slug: 'todoist',
tagline: 'This is a project management tool built with React and Firebase API.',
url: 'https://dcrawler-1575237028508.firebaseapp.com/dashboard',
banner_img: 'https://cdn.dribbble.com/users/2319164/screenshots/5805618/upload_dribbble-800x600.png?resize=400x0',
slider: [],
github_url: 'https://github.com/kleva-j/Todoist',
highlight: 'show',
},
{
id: '64e3a5b8fa8d4cafdc06234a',
updatedAt: '2023-07-05T23:00:00.000Z',
createdAt: '2023-07-05T23:00:00.000Z',
title: 'Personal Website V2',
slug: 'personal-website-v2',
tagline: 'The second iteration of my personal website built.',
url: 'https://michaelobasi.dev/portfolio_v2',
banner_img:
'https://images.pexels.com/photos/743986/pexels-photo-743986.jpeg?auto=compress&cs=tinysrgb&w=640&h=480&dpr=1',
slider: [],
github_url: 'https://github.com/kleva-j/portfolio_v2',
highlight: 'show',
},
{
id: '64e3ac5723111e8fc29a94f1',
updatedAt: '2023-07-05T23:00:00.000Z',
createdAt: '2023-07-05T23:00:00.000Z',
title: 'Personal Website V1',
slug: 'personal-website-v1',
tagline: 'The first design iteration of my personal website built with vite (react).',
url: 'https://michaelobasi.dev/',
banner_img:
'https://images.pexels.com/photos/7181184/pexels-photo-7181184.jpeg?auto=compress&cs=tinysrgb&w=640&h=480&dpr=1',
slider: [],
github_url: 'https://github.com/kleva-j/kleva-j.github.io',
highlight: 'show',
},
];

0 comments on commit 27063fc

Please sign in to comment.