@marcuth/mediafire
v1.3.1
Published
A simple wrapper for the Mediafire API
Maintainers
Readme
@marcuth/mediafire
@marcuth/mediafire is a package for the Mediafire service designed to communicate with its API, handling authentication, file management, and folder organization.
📦 Installation
Installation is straightforward; simply use your preferred package manager. Here is an example using NPM:
npm i @marcuth/mediafire
🚀 Usage
Authentication
To access the routes, you must first authenticate. There are two ways to do this: using email and password (the only method implemented so far) or via API Keys.
Using email and password:
import { Mediafire } from "@marcuth/mediafire"
;(async () => {
const mediafire = new Mediafire({
email: "YOUR_EMAIL",
password: "YOUR_PASSWORD"
})
await mediafire.logIn()
})();
Folders
Getting information
import { Mediafire } from "@marcuth/mediafire"
;(async () => {
// Your way of instantiating Mediafire
const folderInfo = await mediafire.folders.getInfo({
folderKey: "your-folder-key"
})
console.log(folderInfo)
})();
Getting information by path
import { Mediafire } from "@marcuth/mediafire"
;(async () => {
// Your way of instantiating Mediafire
const folderInfo = await mediafire.folders.getInfo({
folderPath: "path/to/folder"
})
console.log(folderInfo)
})();
Getting contents
import { Mediafire } from "@marcuth/mediafire"
;(async () => {
// Your way of instantiating Mediafire
const folderContents = await mediafire.folders.getContents({
folderKey: "your-folder-key"
})
console.log(folderContents)
})();
Getting contents by path
import { Mediafire } from "@marcuth/mediafire"
;(async () => {
// Your way of instantiating Mediafire
const folderContents = await mediafire.folders.getContents({
folderPath: "path/to/folder"
})
console.log(folderContents)
})();
Files
Getting information
import { Mediafire } from "@marcuth/mediafire"
;(async () => {
// Your way of instantiating Mediafire
const fileInfo = await mediafire.files.getInfo({
quickKey: "your-quick-key"
})
console.log(fileInfo)
})();
Getting information by path
import { Mediafire } from "@marcuth/mediafire"
;(async () => {
// Your way of instantiating Mediafire
const fileInfo = await mediafire.files.getInfoByPath({
filePath: "path/to/folder/file.ext"
})
console.log(fileInfo)
})();
Getting download links
import { Mediafire } from "@marcuth/mediafire"
;(async () => {
// Your way of instantiating Mediafire
const fileLinksInfo = await mediafire.files.getLinks({
quickKey: "your-quick-key"
})
console.log(fileLinksInfo)
})();
Uploading a file
import { Mediafire } from "@marcuth/mediafire"
import fs from "node:fs"
;(async () => {
// Your way of instantiating Mediafire
const uploadInfo = await mediafire.files.upload({
fileName: "file.ext",
file: fs.createReadStream("path/to/source-file.ext")
})
console.log(uploadInfo)
})();
Uploading a file to a specific path
import { Mediafire } from "@marcuth/mediafire"
import fs from "node:fs"
;(async () => {
// Your way of instantiating Mediafire
const uploadInfo = await mediafire.files.uploadToPath({
filePath: "path/to/destination/file.ext",
file: fs.createReadStream("path/to/source-file.ext")
})
console.log(uploadInfo)
})();
🧪 Testing
Automated tests are located in the __tests__ directory. To run them:
npm run test
🤝 Contributing
Want to contribute? Follow these steps:
- Fork the repository.
- Create a new branch (
git checkout -b feature-new). - Commit your changes (
git commit -m 'Add new feature'). - Push to the branch (
git push origin feature-new). - Open a Pull Request.
📝 License
This project is licensed under the MIT License.
