Skip to content

Latest commit

 

History

History
106 lines (91 loc) · 5.55 KB

catchUp.md

File metadata and controls

106 lines (91 loc) · 5.55 KB

Welcome to the DevDogs Optimal Schedule Builder Project!

Purpose of This Article

This article is a guide for new and existing members of the Optimal Schedule Builder project. It provides an overview of our mission, accomplishments, tools, and how to get started.

Brief Description

The Optimal Schedule Builder is a collaborative project aimed at creating a self-optimizing scheduling platform for students and advisors as UGA. By combining thoughtful design, powerful algorithms, and seamless integration, we strive to deliver an intuitive and efficient experience.


Focus Groups Overview

UI/UX Team

  • Purpose: Design an intuitive and visually appealing interface for users.
  • Key Accomplishments:
    • Planned out entire User Experience and placed it in this page
    • Designed various pages for the optimized schedule builder. You can find them all here
    • Added pages for the home page, schedule view, course info, etc.
  • What They're Working on Next:
    • This group has a list of components to complete for the MVP found on github projects
    • All incomplete components should be added to the figma page and please follow these Idenity Guidelines
  • Technologies:
    • Figma

Frontend Team

  • Start Here!
  • Purpose: Create components that the user can interact with. Be able to provide the user with data from the backend team.
  • Key Accomplishments:
    • Created a variety of functions that builds the pages.
    • Created Schedule View, Landing, Home page, ect.
    • Followed UI/UX team's designs and turned it into code.
  • Technologies
    • Node.js
    • Next.js
    • pnpm
    • React
    • Tailwind CSS
    • HTML5
    • Add setup guide here!

Backend/API Team

  • Purpose: Build and maintain the engine that connects the platform. Pull and manipulate data from various PDFs to supply data for users.
  • Key Accomplishments:
    • Created Spring Boot endpoints for course pdf and bulletin information.
    • Created thorough endpoint documentation.
  • Technologies:
    • Spring Boot
    • Java

Algorithms Team

  • Purpose: Create intelligent scheduling systems to enhance user plans.
  • Key Accomplishments:
    • Developed brute-force scheduling prototypes.
    • Integrated CP-SAT and genetic algorithms for schedule optimization.
  • Technologies:
    • Java

Database Team

Web Scraping Team

  • Purpose: Automate data collection to populate the database.
  • Key Accomplishments:
    • Created a pdfscraper to collect course section information from pdf's listed here -Created a pdfscraper to collect syllabus information from the [UGA Bulletin] (https://bulletin.uga.edu/coursesHome)
    • Created scrapers for course bulletin data, building details, and transcripts.
    • Automated data parsing
  • Technologies:
    • Development: Java,

Getting Started

1. Set Up Your Environment

  • Create a fork of the GitHub Repository
  • Clone your new fork into your preferred IDE with Github desktop or your terminal.
  • Join the team’s Discord and follow the prompts to set it up.

2. Collaborate

  • Attend weekly sessions at the new poultry science building, room 125 from 5:30-6:30PM
  • Join a chat in our discord named after your interested group.

3. Start Contributing

  • Pick a task from the GitHub issue tracker or propose a new task.
  • Submit pull requests and collaborate with peers for feedback.

Useful Resources


Join Us!

The Optimal Schedule Builder project is a collective effort of passionate developers and designers. We’re excited to have you onboard to make this platform even better. Together, let’s build extraordinary projects!