36 lines
1.2 KiB
TypeScript
36 lines
1.2 KiB
TypeScript
import { newLine } from "..";
|
|
import ScrollComponent from "../ScrollComponent";
|
|
import type { ProjectProps } from "./Project";
|
|
import Project from "./Project";
|
|
|
|
interface ProjectsProps {
|
|
width: number;
|
|
height: number;
|
|
scrollPosition: number;
|
|
}
|
|
|
|
const Projects = ({ width, height, scrollPosition }: ProjectsProps) => {
|
|
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",
|
|
},
|
|
];
|
|
return ScrollComponent({
|
|
width,
|
|
height,
|
|
scrollPosition,
|
|
text: projects.map((project) => Project(project)).join(newLine),
|
|
});
|
|
};
|
|
export default Projects;
|