Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/dan-online/bunnycdn-stream

A simple, lightweight, and easy to use HTTP streaming library for BunnyCDN.
https://github.com/dan-online/bunnycdn-stream

bunnycdn bunnycdn-stream hacktoberfest nodejs typescript video-processing

Last synced: about 2 months ago
JSON representation

A simple, lightweight, and easy to use HTTP streaming library for BunnyCDN.

Awesome Lists containing this project

README

        

[![Contributors][contributors-shield]][contributors-url]
[![Forks][forks-shield]][forks-url]
[![Stargazers][stars-shield]][stars-url]
[![Issues][issues-shield]][issues-url]
![Codecov][coverage-shield]





Logo

BunnyCDN-Stream


A simple, lightweight, and easy to use library for BunnyCDN's stream api.


Documentation
·
Report Bug
·
Request Feature


Table of Contents



  1. About The Project



  2. Getting Started


  3. Usage

  4. Contributing

  5. License

  6. Contact

  7. Acknowledgments

## About The Project

![Product Name Screen Shot][product-screenshot]

There are many bunnycdn modules for accessing bunnycdn storage yet none of them provide access to the `stream` endpoint, which requires seperate authentication. Therefore I decided to just write my own in typescript.

This was harder than you would think, a lot of bunnycdn's documentation is misnamed or just not documented. Therefore I had to experiment a lot but I believe I was able to make this library simple and easy to use.

### Built With

- [Axios](https://axios.com)
- [Typescript](https://www.typescriptlang.org)
- [TSup](https://tsup.egoist.dev)
- [Biome](https://biomejs.dev)

## Getting Started

To get a local copy up and running follow these simple example steps.

### Install

- npm

```sh
npm install bunnycdn-stream
```

- yarn
```sh
yarn add bunnycdn-stream
```

## Usage

_For more examples, please refer to the [Documentation](https://github.com/dan-online/bunnycdn-stream/blob/main/docs/classes/BunnyCdnStream-1.md)_

## Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are **greatly appreciated**.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement".
Don't forget to give the project a star! Thanks again!

1. Fork the Project
2. Create your Feature Branch (`git checkout -b feature/AmazingFeature`)
3. Commit your Changes (`git commit -m 'Add some AmazingFeature'`)
4. Push to the Branch (`git push origin feature/AmazingFeature`)
5. Open a Pull Request

## Testing

The project is tested with `vitest` and requires you to have a library on your BunnyCDN account to send commands to the Bunny API.

> Warning: all videos will be deleted during testing.

### Keys

```sh
BUNNY_VIDEO_LIBRARY=xxx BUNNY_API_KEY=xxx npm test
```

Also, `IGNORE_PRUNE=1` can be used to keep the testing video at the end of the tests for further manual checking.

## License

Distributed under the MIT License. See [LICENSE](LICENSE) for more information.

## Contact

DanCodes - [@dan-online](https://github.com/dan-online) - [email protected]

Project Link: [https://github.com/dan-online/bunnycdn-stream](https://github.com/dan-online/bunnycdn-stream)

## Acknowledgments

- [Josh Core](https://github.com/josh-development/core) - For the project layout so I could easily write this module in a day without worrying about typescript issues

[contributors-shield]: https://img.shields.io/github/contributors/dan-online/bunnycdn-stream.svg?style=for-the-badge
[contributors-url]: https://github.com/dan-online/bunnycdn-stream/graphs/contributors
[coverage-shield]: https://img.shields.io/codecov/c/github/dan-online/bunnycdn-stream?token=FAU4GNC5FD&style=for-the-badge&logo=codecov
[forks-shield]: https://img.shields.io/github/forks/dan-online/bunnycdn-stream.svg?style=for-the-badge
[forks-url]: https://github.com/dan-online/bunnycdn-stream/network/members
[stars-shield]: https://img.shields.io/github/stars/dan-online/bunnycdn-stream.svg?style=for-the-badge
[stars-url]: https://github.com/dan-online/bunnycdn-stream/stargazers
[issues-shield]: https://img.shields.io/github/issues/dan-online/bunnycdn-stream.svg?style=for-the-badge
[issues-url]: https://github.com/dan-online/bunnycdn-stream/issues
[license-shield]: https://img.shields.io/github/license/dan-online/bunnycdn-stream.svg?style=for-the-badge
[license-url]: https://github.com/dan-online/bunnycdn-stream/blob/master/LICENSE
[product-screenshot]: https://github.com/dan-online/bunnycdn-stream/raw/main/assets/images/demo.png?raw=true