https://github.com/iivexii/lgu-timetableapi
Unofficial API for the timetable of Lahore Garrison University which uses its own internal caching system to serve its users with fast response.
https://github.com/iivexii/lgu-timetableapi
api express expressjs good-first-issue good-first-pr help-wanted javascript lahore-garrison-university lahore-garrison-university-timetable lgu lgu-timetable lgu-timetable-api node nodejs timetable-api timetable-lgu
Last synced: 14 days ago
JSON representation
Unofficial API for the timetable of Lahore Garrison University which uses its own internal caching system to serve its users with fast response.
- Host: GitHub
- URL: https://github.com/iivexii/lgu-timetableapi
- Owner: IIvexII
- License: mit
- Created: 2022-10-22T13:54:41.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2025-03-02T04:23:54.000Z (about 1 year ago)
- Last Synced: 2025-03-02T05:23:05.619Z (about 1 year ago)
- Topics: api, express, expressjs, good-first-issue, good-first-pr, help-wanted, javascript, lahore-garrison-university, lahore-garrison-university-timetable, lgu, lgu-timetable, lgu-timetable-api, node, nodejs, timetable-api, timetable-lgu
- Language: JavaScript
- Homepage: https://lgutimetable.online/developer
- Size: 2.4 MB
- Stars: 5
- Watchers: 1
- Forks: 7
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Security: SECURITY.md
Awesome Lists containing this project
README
# ⚠ No longer maintained ⚠ check out [new APIS](https://lgutimetable.vercel.app/developer)
```diff
+ This repository is still worth checking if you want to scrap data on your own
```
Timetable API
Blazingly fast, lightweight and easy to use.
Key Features •
How To Use •
Download •
Routes •
Technologies •
Used By •
Contributors •
License
## Key Features
- 📑 Provide data in **JSON**
- 🤝 APIs for all the important data like `semesters`, `degrees`, `sections` and `timetable`
- ⚡ Fast and easy to use
- 🔻 ligneweight with avg response size of `633.38 bytes` per request
## How To Use
To clone and run this application, you'll need [Git](https://git-scm.com) and [Node.js](https://nodejs.org/en/download/) (which comes with [npm](http://npmjs.com)) installed on your computer. From your command line:
```bash
# Clone this repository
$ git clone https://github.com/IIvexII/LGU-TimetableAPI.git
# Go into the repository
$ cd LGU-TimetableAPI
# Install dependencies
$ npm install
# Run the app
$ npm start
```
> **Note**
> If you're using Linux Bash for Windows, [see this guide](https://www.howtogeek.com/261575/how-to-run-graphical-linux-desktop-applications-from-windows-10s-bash-shell/) or use `node` from the command prompt.
## Download
You can [download](https://github.com/IIvexII/LGU-TimetableAPI/releases) the latest installable version of Timetable API for Windows, macOS and Linux.
## Routes
| Method | Route | Special Params | Description | Example |
| ------ | :----------: | :-----------------------------: | :----------------------------------------------------------: | ------------------------------------------------------------------------------------- |
| GET | `/semesters` | \_ | return a **JSON** Object containing semesters. | [demo](https://lgu-timetable-api.deta.dev/semesters) |
| GET | `/degrees` | `semester` | all the degree programs in a specific semester. | [demo](https://lgu-timetable-api.deta.dev/degrees?semester=5) |
| GET | `/sections` | `semester`,`degree` | all the section in a semester with via degree program. | [demo](https://lgu-timetable-api.deta.dev/sections?semester=1°ree=BSCS) |
| GET | `/timetable` | `semester`, `degree`, `section` | all the degree programs in a specific semester. | [demo](https://lgu-timetable-api.deta.dev/timetable?semester=3°ree=BSCS§ion=A) |
| GET | `/metadata` | \_ | all the metadata about `sections`, `semesters` and `degrees` | [demo](https://lgu-timetable-api.deta.dev/metadata) | |
| GET | `/days` | \_ | return all days of week with their id used in official timetable| [demo](https://lgu-timetable-api.deta.dev/days) | |
| GET | `/rooms` | \_ | return all rooms available in the university | [demo](https://lgu-timetable-api.deta.dev/rooms) | |
| GET | `/freeRooms` | `day`, `time` `(both optional)` | give the rooms that doesn't not have lecture in it | [demo](https://lgu-timetable-api.deta.dev/freeRooms?day=Monday&time=12:40) |
## Technologies
Technologies used in this project:
[
](https://nodejs.org/)
[
](https://expressjs.com/)
[
](https://github.com/jsdom/jsdom)
[
](https://mongodb.com/)
[
](https://mongoosejs.com/)
[
](https://axios-http.com/)
## Used By
[LGU Timetable Front-end](https://github.com/Zain-ul-din/LGU-BetterTimeTable) - Lightweight timetable frontend on top of this API.
## Our Contributors
## License
MIT - ✔️ Commercial use ✔️ Modification ✔️ Distribution ✔️ Private use