69 lines
2.0 KiB
Markdown
69 lines
2.0 KiB
Markdown
# Orario Scolastico
|
|
|
|
Orario Scolastico is a web application that allows students to view their school
|
|
timetable in a more readable way. The application works by downloading the PDF
|
|
file containing the timetable from the school website and then displaying it in
|
|
a more user-friendly format.
|
|
|
|
## Requirements
|
|
|
|
### If you want to use Docker Compose
|
|
|
|
- [Git](https://git-scm.com/downloads) (optional)
|
|
- [Docker Compose](https://docs.docker.com/compose/install/)
|
|
|
|
### If you don't want to use Docker Compose
|
|
|
|
- [Git](https://git-scm.com/downloads) (optional)
|
|
- [Cargo](https://doc.rust-lang.org/stable/cargo/getting-started/installation.html)
|
|
- [Python](https://www.python.org/downloads/)
|
|
|
|
## Usage
|
|
|
|
If you want to self-host the project, you can follow the steps below:
|
|
|
|
### With Docker Compose
|
|
|
|
```bash
|
|
git clone https://git.riefolo.me/mariano/orario-scolastico-itet.git
|
|
cd orario-scolastico-itet
|
|
docker compose up -d --build
|
|
```
|
|
|
|
### Without Docker Compose
|
|
|
|
If you prefer to build the project without Docker, you can follow the steps below:
|
|
|
|
```bash
|
|
git clone https://git.riefolo.me/mariano/orario-scolastico-itet.git
|
|
cd orario-scolastico-itet
|
|
cargo build --release
|
|
./target/release/orario-scolastico-itet
|
|
```
|
|
|
|
Consider that this may not work if you are not on a Linux machine.
|
|
|
|
## Contributing
|
|
|
|
Pull requests are welcome. For major changes, please open an issue first
|
|
to discuss what you would like to change.
|
|
|
|
Please make sure to update tests as appropriate.
|
|
|
|
## FAQ
|
|
|
|
### Does this project DoS the school website?
|
|
|
|
The project features a cache system that prevents it from making too much
|
|
requests. The list of PDFs is only fetched every 30 minutes only if a user asks for
|
|
it, and the pdf files are only fetched once per file.
|
|
|
|
### Can I use this project with my school?
|
|
|
|
At the moment, the project is only compatible with the
|
|
[ITET Cassandro Fermi Nervi](https://cassandroferminervi.edu.it/) institute in Italy.
|
|
|
|
## License
|
|
|
|
Orario Scolastico is released under the [Mozilla Public License 2.0](LICENSE)
|