diff --git a/.vscode/settings.json b/.vscode/settings.json
new file mode 100644
index 0000000..cbb7b3a
--- /dev/null
+++ b/.vscode/settings.json
@@ -0,0 +1,3 @@
+{
+ "liveServer.settings.port": 5502
+}
\ No newline at end of file
diff --git a/src/app/(main)/(routes)/projects/content.tsx b/src/app/(main)/(routes)/projects/content.tsx
index d0e04f2..e8f2926 100644
--- a/src/app/(main)/(routes)/projects/content.tsx
+++ b/src/app/(main)/(routes)/projects/content.tsx
@@ -6,6 +6,210 @@ import ApplyButton from '~/src/app/components/Projects/ApplyButton';
import { getMember } from '~/src/app/components/members';
import { MemberID } from '~/src/app/components/members';
import { ExternalLink } from 'lucide-react';
+import React from "react";
+
+// Internalized components
+
+const ProjectTitle: React.FC<{
+ title: string;
+ Icon: React.ComponentType
+ {text}
+
+ {para}
+ {getMember({ memberID: leaderID as MemberID, memberData: "bio" })} {member} A sister website to CodeDevils.org. A content library for users to visit and learn how to code!
- The sister website to CodeDevils.org, CodeDevils Academy is our content management and learning
- platform. We're excited to announce the development of our dedicated learning platform designed
- to empower our community through accessible educational resources. This project will be built
- from the ground up, although the designs for it are in the late stages. Our vision for CodeDevils
- Academy is to create an engaging, user-friendly environment where members can easily access a wealth
- of learning materials tailored to their needs.
-
- We aim to provide a seamless experience for all users. The platform will feature a clean and organized
- layout, allowing members to quickly find exclusive tutorials, courses, and resources without hassle.
- We plan to create a robust content management system that will allow us to upload, edit, and manage
- educational materials efficiently.
-
- The platform will host a variety of content formats, including written tutorials, video lessons,
- quizzes, and coding challenges. By offering multiple learning styles, we aim to engage all members,
- whether they are beginners or advanced developers. To keep our members motivated, we'll implement
- progress tracking features that allow users to monitor their advancement through courses and tutorials.
- This will help them set goals and celebrate their achievements.
-
- If you're ready to make a difference and help us build CodeDevils Academy, we invite you to apply.
- Let's create a premier learning platform that reflects our commitment to education and community.
- Your journey with CodeDevils starts here—let's make something great!
- { getMember({memberID: projectTeams[projectID][0]?.[0] as MemberID, memberData: 'bio'}) } {member} Our rapidly-evolving website. New features and tools are constantly being added!
- This is the codedevils.org project; the website you're currently looking at. With many features
- planned, and with an active rebrand going on, we'll need some talented hands to keep this ship running.
- This is considered one of our core projects, meaning it is essential to the CodeDevils brand and
- identity. We build our websites in Next.js and Typescript. Next.js is a powerful framework for
- JavaScript/TypeScript that handles frontend and backend deployments. One primary focus of the
- website's design is to keep the code maintainable, manageable, and readable. We will not be building
- web pages that are simply hard-coded in HTML, but are dynamic and rely on backend data structures to
- function.
-
- We have a lot of fun features planned, many of them are just to show off our skills as programmers,
- but we're here to advertise our organization and put our best foot forward to outside companies,
- prospective contributors, and to the university we stand behind. Our project is dedicated not to
- being flashy, but to being robust and respectable to the community at large. We aim to create a
- website that is not just functional but also resonates with our audience, reflecting our dedication
- to quality and professionalism.
-
- We're seeking contributors who share our passion for technology and community. Whether you're a
- seasoned developer, a creative designer, or even someone wanting to dip their toes into web design
- and learn from us, you're in the right place. If you're ready to make a meaningful contribution,
- we invite you to join us. Whether you can dedicate a few hours or want to take on a larger role,
- your efforts will help shape the future of CodeDevils.org. This is more than just coding; it's
- about building a resource that empowers our community and showcases our commitment to excellence.
-
- Let's work together to create a website that embodies the spirit of CodeDevils—dynamic, robust,
- and community-focused. Your journey with us starts here. Let's make it remarkable!
- { getMember({memberID: projectTeams[projectID][0]?.[0] as MemberID, memberData: 'bio'}) } {member}{title}
+ Current Project Goals
+
+ {goals.map((goal, idx) => (
+
+ No contributors just yet. Be the first to apply!
+ Project Team
+ {getMember({ memberID: leaderID as MemberID, memberData: "name" })}
+ No contributors just yet. Be the first to apply
>
+ )}
+ CodeDevils Academy
- Current Project Goals
-
-
- Project Team
- { getMember({memberID: projectTeams[projectID][0]?.[0] as MemberID, memberData: 'name'}) }
- No contributors just yet. Be the first to apply!
>}
- CodeDevils Website
- Current Project Goals
-
-
- Project Team
- { getMember({memberID: projectTeams[projectID][0]?.[0] as MemberID, memberData: 'name'}) }
- No contributors just yet. Be the first to apply!
>}
-
A series of Game Development projects to implement in various places around CodeDevils!
- ), ( - <> -- Do you want to learn more about game development? Then the CD-GameDev project is for you. - We have decided to use the Rust programming language, a growingly popular, high-performance, - multi-purpose programming language that is sure to be a great tool to add to your skill set. - And although most games tend to use object oriented programming, we have opted to use a different - paradigm that is also growing more popular in the game dev world; Entity Component System (ECS). - This paradigm allows for major performance gains in compute heavy games, and also offers a different - way to think about objects in our game by separating data and systems. For this endeavor, we will be - using the Bevy ECS framework, one of the best on the market. -
- One of the main drivers behind the decision of using Rust + Bevy, was that it is open-source, and - is turtles all the way down. In other words, everything is Rust from top to bottom, allowing us - to delve deep into how the Bevy ECS framework, and all its accompanying tools, work under the hood. - We want to teach you about all the components that goes into creating and running a game, and traditional - game engines usually abstract all those details away. But that is not to say that Bevy is not easy to use. - After some practice, we believe you'll find that it is incredibly ergonomic and user friendly, thanks to - the amazing engineers contributing to the Bevy project. -
- The game itself will be inspired from the - - metroidvania genre - - , but might take elements from other genres as - well. It will be a 2D, side-view game, with a pixel art style. The features and systems we will implement - will evolve over time as we prototype and progress together. By joining this project, you won't just be - coding what we tell you to code, we also want you to be part of the discussion about where the game is headed - in all of its aspect, would it be features and systems, or story and lore. -
- The journey will be a challenging one, but will be very rewarding as well. You might have to learn quite - a few things before you can get started contributing, especially if you never coded in Rust or are new - to game development, but we will be there every step of the way, and we have curated a selection of - resources to help you get started using Rust and Bevy, so that you can start your game dev journey - with us as fast as possible. From things like how to handle asset loading, animations, handling audio, - to how game handles physics and graphics rendering, you'll come out of this project with a greater - understanding of all that comes into play when creating games. -
- > - ), ( -{ getMember({memberID: projectTeams[projectID][0]?.[0] as MemberID, memberData: 'bio'}) }
-{member}
} -Our Mobile app! Built for iOS and Android, helps contributors keep up to date with projects and keeps members aware of events!
- ), ( - <> -- Welcome to the CodeDevils Mobile project page! As part of our commitment to fostering a community of - developers, we are excited to announce the development of our mobile app, CodeDevils Mobile. This project - is designed to create a welcoming space for anyone interested in mobile development, whether you're a - beginner looking to learn or an experienced developer eager to share your knowledge. -
- With CodeDevils Mobile, our vision is to build an inclusive platform that encourages exploration and - collaboration in the world of mobile app development. We recognize that mobile technology is an integral - part of our lives, and we want to provide a space where members can come together to learn, share ideas, - and showcase their projects. By utilizing Dart/Flutter, Swift, and Kotlin, we aim to create a versatile - application that caters to both iOS and Android platforms. -
- CodeDevils Mobile, in its current vision, will serve primarily as a community platform for CodeDevils - events, Academy content, and have a contributor platform to stay up to date with the latest project - announcements and changes. Additional features will come as the project unfolds. We have a lot of - excitement for this project and we're very excited to see what it becomes. -
- If you have a particular interest or passion for mobile development, we encourage you to get started - early on this project and make your mark! Your influence on the direction and execution of this project - will be invaluable to both your career and to the project as a whole. -
- > - ), ( -{ getMember({memberID: projectTeams[projectID][0]?.[0] as MemberID, memberData: 'bio'}) }
-{member}
} -A job post scraping tool built to keep our members up to date with the latest developments in the job market!
- ), ( - <> -- CD-Scraper is a project designed to teach the fundamentals of web scaping and the tools to make that happen. - The goal is to design a system for scraping job posting from various websites and serving the collected data - through an API build using SpringBoot. As this project is going to be based fully in Java, it is friendly to - those that are just starting off their programming journey. -
- Throughout this project, contributors will have the opportunity to collaborate with peers, share insights, - and learn from each other. This team-oriented approach fosters a supportive environment where beginners can - ask questions and gain confidence in their coding abilities. You'll not only develop your technical skills - but also engage in problem-solving and critical thinking as you navigate the challenges of web scraping - together. -
- Each contributor will be responsible for implementing a script to scrape different job posting websites - (i.e. Indeed, LinkedIn). Through this process, you will, hopefully, have a grasp on the some fundamental - HTML parsing. -
- In this project, you will NOT be working with APIs or any web related technology. Those will be managed - by staff to ensure this project is easy to pick up for those new to programming, but wanting to contribute - to a more complex project outside of school assignments. Also, you will NOT be working with any data and - their persistence (i.e. databases). -
- If you want to apply what you have learned about Java in class into a project that is more tangible, - join our beginner-friendly project by filling out our application. Your project lead will reach out to you - within the week. Let's learn to code by building something meaningful and fun! -
- > - ), ( -{ getMember({memberID: projectTeams[projectID][0]?.[0] as MemberID, memberData: 'bio'}) }
-{member}
} -