Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add a share feature and improve the course panel UI #244

Open
sarveshdakhore opened this issue Jan 2, 2024 · 8 comments
Open

Add a share feature and improve the course panel UI #244

sarveshdakhore opened this issue Jan 2, 2024 · 8 comments
Labels
enhancement New feature or request priority/low This issue doesn't have to be resolved immediately

Comments

@sarveshdakhore
Copy link

sarveshdakhore commented Jan 2, 2024

Is your feature request related to a problem? Please describe.

  1. Not for All Sem student
  2. Unable to make a variation of timetable hassle-free,

Solution I made and suggesting

  1. Updated for all sem, changed the whole process
  2. Following the GPL-3.0, I hosted a modified version on https://ffcsonthego.sarveshdakhore.in
  3. I added the original TT link using the button on the nav bar called 'OG TT'
  4. Please add a button in your nav bar that links my modified site ( https://ffcsonthego.sarveshdakhore.in ),
  5. Upload TT (Upload this file in the modified site to experience): Download Raw File
  6. suggested name: For All Sem, Pref TT, or whatever name you feel is good

My TT Solves

  1. Limitation of the semester, any sem student can use it
  2. repetitive addition and deletion from the course list
  3. explore as many variations of TT, my program also guides them on what can take or not
    can arrange the preferential order, according to it attack mode will guide you to select a teacher in live FFCS of VIT University.

Additional context
Parcel don't allow routing hence multiple pages not possible

@therealsujitk
Copy link
Collaborator

Hi @sarveshdakhore! Thankyou for contributing to this project, I see you've done a lot of work in the PR you just opened. Reviewing it will take an incredibly long time 😭, but before I get to that help me understand why.

  1. Not for All Sem student

You're trying to say that this site is currently not for all semester student? I don't quite understand that. Usually only one semester happens at a time (Fall Semester, Winter Semester, etc.) and we try to get our hands on the PDF that have the courses and faculties for all branches before the FFCS of each semester.

  1. Unable to make a variation of timetable hassle-free,

I'm afraid I don't understand this point, are you talking about how popular this project is?

@sarveshdakhore
Copy link
Author

sarveshdakhore commented Jan 3, 2024

  1. I mean this site is mostly updated for freshers or sometimes the data is not being updated on time hence this site eliminates that issue and no need to update those large Excel sheets, still want to keep that feature you can link my site to yours and i will link mine to you, because parcel don't support routing, at a time only one page can be hosted

  2. Adding a teacher takes a lot of time, and sharing with friends all variations of the timetable is impossible you have a list of certain teachers for each subject, if you change a teacher in one subject and if the slots change eg lab slots you have to go through whole timetable again and select teachers again, now my code guide to make all variations of teachers easily, in the older version it was not less then the headache
    And now with the save option, you get an offline file to share with your friends your preferential order of teachers easily, and boom just upload that file and you all the selected teachers with their preferential order on the course panel.

@vatz88
Copy link
Owner

vatz88 commented Jan 4, 2024

Hi @sarveshdakhore, thanks for making efforts to improve this project. Also, really appreciate you honouring the GPL license.

I like the idea of enhancements you want to make but the current version of what you have build needs more work to maintain the UX experience and also make the UI sleek on some of the newly added parts.

The UX experience i'm referring to is, currently on first try I had no idea how this works and how I'm supposed to use it as opposed to the current UX experience where you an search a course, select options of various slots and teacher, all this with just few clicks. Your update makes it easier to toggle a course from the timetable but adding it does feel little tricky. I also don't see slot and faculty name auto-filled.

I'd take inspiration from your implementation and say, we should add a checkbox to quickly toggle courses from the timetable, instead of forcing users to delete it (using the x button).
image

In the UI part, i'm referring to the look of this
image
The buttons "edit", "courses", "teachers" actually work as tabs. The fonts are too big on the left panel. And just realised, there's no way to delete an added entry, you can only toggle it.

Overall I'd say the idea is good but if you try using it as a new user whose's already been using this site, this change is drastic and needs more polish. I say this because this site has been running for quite a few years now, some who used it in their first semester have graduated now! We need to maintain the already achieved standard.

@sarveshdakhore
Copy link
Author

sarveshdakhore commented Jan 4, 2024

Thank you @vatz88 for your invaluable feedback; I genuinely appreciate your insights. I am committed to addressing the areas you've highlighted and will provide you with updates once the necessary improvements have been implemented. Your collaboration is crucial, and I look forward to delivering an enhanced and refined outcome based on your guidance.

@vatz88
Copy link
Owner

vatz88 commented Jan 4, 2024

Maybe you can collaborate with @therealsujitk if he has time.

I feel we could add these features to existing site without have much drastic changes. Like I said, add checkbox in out course list table and implement better sharing feature. I'd say explore if we can share current timetable with just a link. It's easier than downloading, sharing and then uploading.

@therealsujitk
Copy link
Collaborator

therealsujitk commented Jan 4, 2024

  1. I mean this site is mostly updated for freshers or sometimes the data is not being updated on time hence this site eliminates that issue and no need to update those large Excel sheets, still want to keep that feature you can link my site to yours and i will link mine to you, because parcel don't support routing, at a time only one page can be hosted

This isn't true, we try to update the site with the latest course list for as many semesters as we can, it's just that in some cases we can't get our hands on the course list. This feature is definitely important because it helps with adding courses instead of manually adding the slots (which is also an option currently). That said, @vatz88 has talked about a feature where users can upload their own excel sheet (#151) for when a universal sheet isn't available.

  1. Adding a teacher takes a lot of time, and sharing with friends all variations of the timetable is impossible you have a list of certain teachers for each subject, if you change a teacher in one subject and if the slots change eg lab slots you have to go through whole timetable again and select teachers again, now my code guide to make all variations of teachers easily, in the older version it was not less then the headache
    And now with the save option, you get an offline file to share with your friends your preferential order of teachers easily, and boom just upload that file and you all the selected teachers with their preferential order on the course panel.

The share option is definitely something that we can add, I wanted to work on this a long time ago but I was thinking more along the lines of a sharable link rather than a file, not entirely sure how that would work though.


I like the UI you've come up with, though it needs some improvements. Like @vatz88 said, it took some time to figure out how to use it.

  • Maybe the Add Teacher button can be inside the course dropdown on the left.
  • I'm not sure what Attack Mode is?
  • There's no autofill for adding teachers, which is inconvenient.

So from what I understand, you'd like to add the following to this site.

  • Redesign the Course Panel, make it easier to use.
  • Allow for students to share their timetable (editable).

@sarveshdakhore
Copy link
Author

Maybe you can collaborate with @therealsujitk if he has time.

I feel we could add these features to existing site without have much drastic changes. Like I said, add checkbox in out course list table and implement better sharing feature. I'd say explore if we can share current timetable with just a link. It's easier than downloading, sharing and then uploading.

Sure, I would love to collaborate with @therealsujitk
Link sharing is possible, i will work on it,
It will take some time to setup link sharing.

@therealsujitk
Copy link
Collaborator

therealsujitk commented Jan 6, 2024

Sure! @sarveshdakhore if you have any questions feel free to ask me, I'll be reviewing your PR once it's ready (for now I think you can convert it to a draft). A few points to remember while contributing to this projects code,

  • Write your functions in the correct files depending on their functionality (course-panel, timetable, etc.)
  • Use bootstrap 5 CSS classes for everything, refrain from using custom CSS UNLESS ABSOLUTELY NECESSARY
  • Comment your code in places where understanding it is not straightforward (don't overdo it)
  • Remove all unused code unless it's necessary to keep (for example, commented code)

If possible, make the share feature and the UI improvements two separate PRs making it easier for me to review.

@therealsujitk therealsujitk added the priority/low This issue doesn't have to be resolved immediately label Jan 6, 2024
@therealsujitk therealsujitk changed the title For All SEM Students, All needful variations Add a share feature and improve the course panel UI Jan 6, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request priority/low This issue doesn't have to be resolved immediately
Projects
None yet
Development

No branches or pull requests

3 participants