Giter Club home page Giter Club logo

swampscheduler's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

swampscheduler's Issues

Export schedules to calendar

Use RRules to create an iCal file.

Allow custom course names and abbreviations.
Put locations.
Put period ranges and instructor information in description.

Save schedules

Ability to save schedules to the browser as a cookie.

Maybe auto-save.

Save & load selections

Save selections to the browser cache.
Maybe even link sharing.

Maybe auto-save (display last updated time live).

  • (Last Saved Right Now)
  • (Last Saved 1 Minute Ago)
  • ...

Allow for a course to be in multiple selections?

Should we disallow a course from being in multiple selections?

Disallowing this would prevent schedules with multiple sections of the same course.

If we disallow this we should warn the user if they attempt to add a section somewhere they shouldn't.

Cancel an in-progress search for courses

If the user searches courses by typing in a common class prefix, the search for matching courses will hang. It would be helpful for users to end the search or be able to start a new search with updated terms that implicitly cancels the previous one.

Course / section hover color-change

  • On hover over a course/section, change the color of sections that belong to that course.
  • On hovering over a section (on the left), change the color of the same section (in the middle) if it exists
  • On hovering over a section (in the middle), change the color of other sections in the middle that belong to the same course

The goal is to easily identify groups of courses.

Suggestion: back-to-back preference

create a "no back-to-back" option that calculates the time it takes to get to each class and make sure it is possible to make it within a certain time period

Update README

  • Update README with more information.
  • Change name to SwampScheduler
  • Add beautiful screenshots (maybe animations, too -- zooming perspective)
  • Add OSC Logo
  • Add Documentation link

Search caching doesn't ignore capitalization

Searches made with the same letters but different capitalizations are cached separately. For example, if you search "mas" then "Mas" the app calls the API a second time instead of using the cached data. We should normalize capitalization before saving data to fix this issue.

Cache fetched courses

In reference to Robert's comment #26 (comment).

Expected behavior:
When the user searches "MAC", all math courses are fetched like MAC2312, MAC2313, MAC1105, etc... What we want to do is cache all of these courses (I believe this is already the default behavior for React Query), so when the user queries a specific math course like MAC2312, we will fetch from the cache to get information for that specific course instead of refetching the API.

We can also fetch that course in the background and then update the cache with the latest information.

Collapse-able selections

Collapse-able selections with rotating chevron indicating status. Needs minimum height. Should show some inline statistics of contained sections & courses.

UI Revamp

Something sleeker that takes advantage a better React techniques for less re-rendering would be optimal.

Better theming too.

Sections link to their course

Should be able to click on an icon (external link box symbol / goto) in a SectionDisplay under selections to bring up its corresponding course:

  • show course as a modal (this is cleaner), or
  • change search parameters to (by ID and the course's ID).

Group sections by course

Group sections in selections by course. They should probably also be collapsable with some inline statistics.

Make ScheduleDisplay code less bad

ScheduleDisplay has to convert a Schedule to a different form to easily put the table cells in the <table>.

Maybe just put a function that does the lookup.

Pin / save schedules

Ability to pin/save schedules, change selections, pin/save some more, then click somewhere for "๐Ÿ“Œ Pinned/Saved Schedules" and maybe bring up a modal to view them.

Learn GatorEvals API

-Learn the gator-evals API and figure out what data we can pull from it
-Entire project depends on the data we can pull so this is a fairly important step

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.