GithubHelp home page GithubHelp logo

joanasesinando / gerador-horarios-ist Goto Github PK

View Code? Open in Web Editor NEW
18.0 1.0 5.0 63.09 MB

🕓 A schedule generator for Instituto Superior Técnico (IST)'s students.

Home Page: https://tinyurl.com/gerador-horarios-ist

License: MIT License

JavaScript 0.59% TypeScript 75.90% HTML 14.75% CSS 0.52% Python 0.30% SCSS 7.93%
ist instituto-superior-tecnico tecnico tecnico-lisboa schedule-generator angular11 angular-cli10 bootstrap4 bootstrap-select fontawesome

gerador-horarios-ist's Introduction

GitHub release GitHub last commit
GitHub issues GitHub pull requests Contributors LICENSE

Support on Paypal Buy Me A Coffee


Gerador de Horários | IST

A schedule generator for IST's students to plan their student schedule for the upcoming semester.

This application makes use of the FenixEdu API to get information about academic terms, degrees, courses and respective timetables.

logo

GitHub release

Table of contents

Features

Sort schedules

You can sort the generated schedules to favor a specific characteristic. There are 3 sorting options:

  • Most compact - favours schedules with fewer holes and closer classes;
  • Most balanced - favours schedules that are more balanced throughout the week (avoid strenuous days);
  • More free days - favours schedules that have more free days.

Sort schedules

Pin classes

Once you've found a class you like you can pin it. This way only schedules with pinned classes will be shown.

Pin classes

Exclude classes & timeframes

If you don't want a certain class on your schedule or are busy on a particular day and timeframe you can exclude them. Only schedules in those conditions will be shown.

Exclude class

Exclude timeframe

Change colors

You can customize how your schedule looks by changing its classes' colors.

Change colors

Save for later

You can add schedules you like to the queue and when you're done print them to a PDF file.

Save for later

Development

This project was generated with Angular CLI version 13.2.2.


Run

Clone this repository and navigate inside the project folder and install the dependencies by running:

npm install

After installing the dependencies, run a dev server by executing:

ng serve

Navigate to http://localhost:4200/. The app will automatically reload if you change any of the source files.


Code scaffolding

To generate a new component run:

ng generate component component-name

You can also use ng generate directive|pipe|service|class|guard|interface|enum|module.


Test

To execute the unit tests via Karma run:

ng test

Further help

To get more help on the Angular CLI use ng help or go check out the Angular CLI README.

Contribute

Please check the Contributing Guidelines before contributing.

Thanks goes to these wonderful people (emoji key):


Joana Sesinando

💻 🎨 🌍 ⚠️

Bernardo Marques

🚇 🤔 💻

Tigo

🤔

This project follows the all-contributors specification. Contributions of any kind are welcome!

License

MIT

gerador-horarios-ist's People

Contributors

allcontributors[bot] avatar bernardocmarques avatar dependabot[bot] avatar joanasesinando avatar

Stargazers

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

Watchers

 avatar

gerador-horarios-ist's Issues

Choosing different shifts

One useful feature would be the possibility of choosing to be in both Alameda and Tagus shifts for the theoretical classes of the same course. For example, if a given course has 2 theoretical classes with 2 pairs of shifts, 1 pair in Alameda and the other pair in Tagus, it would be nice to choose one shift from one pair (Alameda) and choose the other shift from the other pair (Tagus).

Page jumps to top when selecting

Describe the bug
When on mobile, page keeps jumping when select inputs change.

To Reproduce
Steps to reproduce the behavior:

  1. Choose an academic year for example

Expected behavior
Should jump to top

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.