Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/maina-francis/tenders

This project is designed to help you stay up-to-date with relevant government tenders posted by the Kenyan government straight to your Microsoft TO-DO app. It utilizes a combination of technologies to fetch, filter, and notify you of new tenders that match specific keywords in the IT sector.
https://github.com/maina-francis/tenders

microsoft-graph-api nestjs nodejs

Last synced: 6 days ago
JSON representation

This project is designed to help you stay up-to-date with relevant government tenders posted by the Kenyan government straight to your Microsoft TO-DO app. It utilizes a combination of technologies to fetch, filter, and notify you of new tenders that match specific keywords in the IT sector.

Awesome Lists containing this project

README

        

# Government Tender Notifier - GitHub Repository

Welcome to the Government Tender Notifier project repository. This project is designed to help you stay up-to-date with relevant government tenders posted by the Kenyan government. It utilizes a combination of technologies to fetch, filter, and notify you of new tenders that match specific keywords in the IT sector.

## Technologies Used

- **Backend Framework:** NestJS
- **Database:** MongoDB
- **External API:** Microsoft Graph API
- **Scheduling:** Cron Job

## System Overview

The Government Tender Notifier system offers an efficient way to monitor government tenders and receive notifications for those related to the IT sector. Here's how the system works:

1. **Data Collection:** The system queries the tenders posted by the Kenyan government.
2. **Keyword Filtering:** The fetched tenders are filtered based on specific keywords related to the IT space. This ensures that only relevant tenders are considered.
3. **Data Storage:** The filtered tenders are stored in the MongoDB database for future reference and analysis.
4. **Notification:** Tenders that match the predefined keywords are then sent as tasks to your Microsoft To-Do app.
5. **Scheduling:** A cron job is set up to run at specific times during the day. This ensures that the system periodically checks for new tenders and sends notifications for any matches.

## Installation and Setup

To run the Government Tender Notifier project on your local machine, follow these steps:

1. Clone the repository:

```
git clone [email protected]:Maina-Francis/tender-filter-script.git
```

3. Install dependencies:
```
npm install
```

5. Configure your environment variables:
- Create a `.env` file based on the provided `.env.example` template.
- Add your Microsoft Graph API credentials and MongoDB connection URI.

4. Start the application:
```
npm run start:dev
```


## Contributing

If you'd like to contribute to the project, feel free to submit pull requests. Contributions in the form of bug fixes, enhancements, or new features are always welcome.

## Future Improvements

The Government Tender Notifier project is designed to evolve. Some potential future improvements include:

- Adding user authentication for personalized notifications.
- Introducing a user-friendly web interface for configuration and monitoring.

## Copyright

© Francis Maina

---

Thank you for your interest in the Government Tender Notifier project. If you have any questions or suggestions, please feel free to reach out to me. We hope this project proves to be a valuable asset for staying informed about government tenders in the IT sector.