2025-03-12 11:21:48 +01:00
|
|
|
import { newLine } from "..";
|
|
|
|
|
import ScrollComponent from "../ScrollComponent";
|
|
|
|
|
import type { ProjectProps } from "./Project";
|
|
|
|
|
import Project from "./Project";
|
|
|
|
|
|
2025-03-12 08:17:34 +01:00
|
|
|
interface ProjectsProps {
|
|
|
|
|
width: number;
|
|
|
|
|
height: number;
|
2025-03-12 09:07:17 +01:00
|
|
|
scrollPosition: number;
|
2025-03-12 08:17:34 +01:00
|
|
|
}
|
|
|
|
|
|
2025-03-12 09:07:17 +01:00
|
|
|
const Projects = ({ width, height, scrollPosition }: ProjectsProps) => {
|
2025-03-12 11:21:48 +01:00
|
|
|
const projects: ProjectProps[] = [
|
|
|
|
|
{
|
|
|
|
|
title: "Algoforge",
|
|
|
|
|
description:
|
|
|
|
|
`A platform for creating and sharing graphical algorithms.${newLine}` +
|
|
|
|
|
`It was made for the algorithm course at IUT de Bayonne et du Pays Basque.${newLine}` +
|
|
|
|
|
`It is made entirely in Vanilla JS. No Framework used.${newLine}` +
|
|
|
|
|
`This app thrives for simplicity, efficiency and performance. ${newLine}` +
|
|
|
|
|
`${newLine}` +
|
|
|
|
|
`Built with love over the course of 3 years,${newLine}` +
|
|
|
|
|
`Algoforge was originally meant to replace an aging software.${newLine}` +
|
|
|
|
|
`It is now used by students and teachers alike.${newLine}`,
|
|
|
|
|
technologies: ["js", "Bun", "Docker"],
|
|
|
|
|
learnMoreLink: "https://github.com/Bing-Chill-inc/Algoforge-main",
|
|
|
|
|
},
|
2025-03-12 11:38:30 +01:00
|
|
|
{
|
|
|
|
|
title: "ssh Portfolio",
|
|
|
|
|
description:
|
|
|
|
|
`The portfolio you are currently browsing.${newLine}` +
|
|
|
|
|
`Built with the Bun javascript runtime.${newLine}` +
|
|
|
|
|
`This portfolio works by simulating an ssh server,${newLine}` +
|
|
|
|
|
`on which your terminal connects as a pty.${newLine}` +
|
|
|
|
|
`Then, the server receives inputs and writes outputs.${newLine}` +
|
|
|
|
|
`This is a fun way to showcase my projects.${newLine}`,
|
|
|
|
|
technologies: ["ts", "Bun", "ssh2"],
|
|
|
|
|
learnMoreLink: "https://forge.feror.fr/feror/Portfolio",
|
|
|
|
|
},
|
2025-03-12 11:59:55 +01:00
|
|
|
{
|
|
|
|
|
title: "sh-chat",
|
|
|
|
|
description:
|
|
|
|
|
`A Discord-like chat app, but in the terminal.${newLine}` +
|
|
|
|
|
`This app was made during a c course at IUT de Bayonne et du Pays Basque.${newLine}` +
|
|
|
|
|
`It is made entirely in C, using sockets for communication.${newLine}` +
|
|
|
|
|
`This app is a simple chat app, with a server and multiple clients.${newLine}` +
|
|
|
|
|
`It offers basic functionalities, such as sending messages, chat history,${newLine}` +
|
|
|
|
|
`changing nickname, uploading files, and more.${newLine}` +
|
|
|
|
|
`Although it really shouldn't be used (at least I wouldn't),${newLine}` +
|
|
|
|
|
`it was a fun project to work on.${newLine}`,
|
|
|
|
|
technologies: ["c"],
|
|
|
|
|
learnMoreLink: "https://github.com/Feror-BotMaker/sh-chat",
|
|
|
|
|
},
|
2025-03-12 11:21:48 +01:00
|
|
|
];
|
|
|
|
|
return ScrollComponent({
|
|
|
|
|
width,
|
|
|
|
|
height,
|
|
|
|
|
scrollPosition,
|
|
|
|
|
text: projects.map((project) => Project(project)).join(newLine),
|
|
|
|
|
});
|
2025-03-12 08:17:34 +01:00
|
|
|
};
|
|
|
|
|
export default Projects;
|