An open API service indexing awesome lists of open source software.

https://github.com/sarasjodin/api-requests


https://github.com/sarasjodin/api-requests

api-requests filtering javascript sorting

Last synced: 2 months ago
JSON representation

Awesome Lists containing this project

README

          

# πŸ“Œ Course Schedule Web Application

## πŸ“– Project Overview

This project is a **web application** that fetches and displays course schedule data from a JSON file. The main objectives are:

- Fetching data using the **Fetch API** with `async/await` and `try/catch`.
- Displaying the course schedule in a **dynamic table**.
- Implementing **sorting** functionality (by course code, course name, and progression).
- Implementing **filtering** functionality (searching by course code or course name).
- Ensuring **real-time updates** without page reloads.
- Using **Parcel** as a build tool and managing version control with **Git & GitHub**.
- Deploying the project using **Netlify**.

## πŸš€ Features

- βœ… Fetch and display course data dynamically.
- βœ… Clickable headers to sort courses alphabetically.
- βœ… Real-time search filtering based on user input.
- βœ… Fully responsive UI for desktop and mobile.
- βœ… Hosted on **Netlify** with automatic deployment.

## πŸ“‚ Project Structure

```
/src
β”œβ”€β”€ index.html # Main HTML structure
β”œβ”€β”€ πŸ“‚styles # Styles folder
β”‚ └──styles.css # Styling for the table and UI
β”œβ”€β”€ πŸ“‚scripts # Scripts folder
β”‚ β”œβ”€β”€app.js # Main JavaScript logic
β”‚ β”œβ”€β”€fetchData.js # Fetch API logic
β”‚ └──utils.js # Sorting and filtering functions
└── πŸ“‚images
```

## πŸ”§ Technologies Used

- **JavaScript (ES6+)**
- **Fetch API**
- **Parcel**
- **Git & GitHub**
- **Netlify** (for deployment)

## πŸ“Œ How to Run Locally

1. **Clone the repository**

````sh
git clone
cd project-folder```

````

2. **Install dependencies & Start the development server**

````npm install
npm run dev ```

````

3. **Open in browser**
The application runs on http://localhost:1234/ by default.

🌍 Live Demo

The project is deployed on Netlify. Click below to view the live version:
[πŸ”— View Live Site](https://some-api-calls.netlify.app/)

## πŸ“Œ Contribution & Version Control

### Git branching strategy:

- **main** β†’ Stable production branch.
- **api-requests/feature/sorting** β†’ Development branches for Fetch API features/sorting and filtering.
Commits should be descriptive, e.g., Added search filtering functionality.
Some pull Requests (PRs) will be reviewed before merging to main.

## πŸ“œ License

This project is open-source and available under the MIT License.