Git Product home page Git Product logo

tptp's Introduction

TPTP

🔗TPTP è un sito che ti permette di calcolare la tua media ed il tuo voto di laurea

Il calcolo del voto di laurea di default cerca di seguire gli standard di UniPa. Tuttavia la quasi totalità dei valori è personalizzabile cercando di coprire il più vasto bacino di utenti possibile.

  • Dalla media ponderata è possibile rimuovere delle materie non caratterizzanti secondo due criteri
    • Rimozione di CFU di materie non caratterizzanti
    • Rimozioni di Materie non caratterizzanti
  • La precedente media viene quindi espressa in centodecimi (media * 110/30)
  • Vengono aggiunti dei punti al voto di laurea di base secondo altri criteri
    • Lodi, Erasmus, Laurea in Corso
    • Bonus di Profitto, dettato dalla media finale

Contributing

Se vuoi contribuire, fai pure. Segui le regole di convivenza umana e fai delle pull-request sistemate.

Prima di cominciare però controlla lo stato del progetto con l'apposita tab e se pensi sia necessario crea un Issue.

License

MIT

Stats

website stats

tptp's People

Contributors

exalfabu avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

nicolo-crimaldi

tptp's Issues

URL Shortener

Figure out a way to shorten the shared url without extra costs.

Add Footer

Add a footer or some information panel that at least has the link to this repo, showing that it is open source and some other stuff it may need.

Import lectures and grades from university website

Add a way to import everything needed from Unipa.
I've thought of a couple of ways

  1. Ugly version: Go to the Unipa website and copy all the text containing lectures info. (with some kind of tutorial explaining how to do it)
  2. Very much better version: Log in into Unipa SSO and requesting the data automatically.

2 has still to be figured out, since I don't really know much about CAS Authentication.
Found this that might be useful but doesn't seem a very safe approach. Maybe there is no alternative. Maybe i need to ask S.I.A. (Unipa's IT Office)

Aggiungere un modo per poter esportare le materie

Almeno il nome, cfu e caratterizzanza delle materie.

In modo tale che i colleghi possono condividersi il loro piano di studi tra di loro e compilare solamente i voti.

Idealmente, si dovrebbero anche condividere le preferenze

Improve state management

How it is now

Currently all I've done to make the website work is "Lifting the state up".
Why? Because I didn't know any better at the time, I knew it was messy and wrong but the time was not a friend and I just did it.

How i imagine the correct way is

After a bit of research i think the correct way would've been to use Redux
Creating a single store containing all the state, divided in slices.


Todo after #34

Optimization needed

Site seems slow on input change, especially on lecture name since it's text.

I think i need to look into custom hooks and get rid of the ugly main states that are passed to every single component.

Drag and Drop lectures

Add the ability to order the lectures.
Possibly with drag and drop, or by alphabetical order (suggesting to name the lectures with a prefix number indicating the academic year / semester)
Any suggestion is accepted

PWA

Add PWA compatibility

Import Classes not working

TL;DR When I try to import classes from Unipa with any enrollment year I can only find the ones for the current academic year and in english.

Wrong academic year

When I try to import classes the study plan is always at the current academic year even though I specify my actual enrollment year. I tried to change the values but nothing changes. I think I'm going to try with other courses to see if that's the problem (Maybe I should have checked before opening the issue but I dont' think so 😉 ).

Possible fix

I suspect something's wrong with the search. I mean that when I put the enrollment year I can only type the solar year but when I followed the post request for the search to the UNIPA site I noticed that in the field for academic year of the educational offer I have to insert an academic year In the format of AAAA/AAAA (Actually I have not checked the code for this yet)

Only works in english

I tried to search for courses in italian but it doesn't find anything even with different academic years.

Inconsistent behaviour while calculating the average

img1
img2
img3
It obviously shouldn't act this way. The problem relies in this line. Here we define the lectures that are removable, but the criteria of being less than the total weighted average means nothing.
Instead it should check if the grade is less than the most recent weighted average.
So i imagine an algorithm more like this:

  • Sort non_caratt lectures from lowest grade to highest;
  • For each of it, calculate the average and remove it only if the grade is less than that.

Final thesis slider

Add an alternative to "Bonus di Profitto" -> a slider that represents the point to the final thesis, to allow the user to be able to predict his final vote

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.