Skip to content

`if-follow-package` is a JavaScript library that provides APIs for managing followers and followings on GitHub

License

Notifications You must be signed in to change notification settings

Open-Sourced-Org/if-follow-package

 
 

Repository files navigation

if-follow-package

if-follow-package is a JavaScript library that provides APIs for managing followers and followings on GitHub.

if-follow-package allows you the following:

  • find users who are not following you back

  • find users who are following you back

  • unfollow users who are not following you back

  • check if a user is following you

  • check if you are following a user

  • get the exact total number of followings

  • get the exact total number of followers

  • and other follow control features

NPM Version npm-build-published github-build-published CI License LinkedIn

Installation

Install from npm registry

npm install if-follow-package

Install from Github Packages registry

npm install @farhan7reza7/if-follow-package

Usage

Initialize

//const ifFollow = require('@farhan7reza7/if-follow-package'); or

const ifFollow = require('if-follow-package'); // can use any

Create an instance

const yourUsername = 'username';  // replace with your username
const yourToken = 'access-token' // replace with your access token

const followController = ifFollow(yourUsername, yourToken);
Steps to generate access-token:

See steps here

Or if already know creating token generate here

Use Methods to manage follow

  • Get a list of users who are not following you back
const notFollowingBackList = followController.whoNotFollowingBack();
  • Get a list of users who are following you back
const followingBackList = followController.whoFollowingBack();
  • Check if a specific user is following you back
const isFollowingBackMessage = followController.isFollowingBack('username');
  • Unfollow a user who is not following you back
followController.unfollowNotFollowingBack('username');
  • Unfollow all users who are not following you back
followController.unfollowAllNotFollowingBack();
  • Check if a user is following you
const isFollowerMessage = followController.isFollower('username');
  • Check if you are following a user
const isFollowingMessage = followController.isFollowing('username');
  • Get the total number of followers
const totalFollowersMessage = followController.totalFollowers();
  • Get the total number of followings
const totalFollowingsMessage = followController.totalFollowings();

Managed Outputs (example user outputs)

isFollower(username)

// Test case: user is a follower
const result1 = followController.isFollower('farhan7reza7');

result1.then((result) => {
    console.log(result);  // Output: "Yes, farhan7reza7 follows you!"
});

// Test case: user is not a follower
const result2 = followController.isFollower('diff-ymd-package');

result2.then((result) => {
  console.log(result);  // Output: "No, diff-ymd-package does not follow you!"
});

isFollowing(username)

// Test case: user is followed
const result3 = followController.isFollowing('farhan7reza7');

result3.then((result) => {
  console.log(result); // Output: "Yes, you follow farhan7reza7!"
});

// Test case: user is not followed
const result4 = followController.isFollowing('anaseem80');

result4.then((result) => {
  console.log(result);  // Output: "No, you do not follow anaseem80!"
});

totalFollowers()

const result5 = followController.totalFollowers();

result5.then((result) => {
  console.log(result);  // Output: "Your total Followers: 1657"
});

totalFollowings()

const result6 = followController.totalFollowings();

result6.then((result) => {
  console.log(result);  // Output: "Your total Followings: 1067`
});

whoNotFollowingBack()

const result7 = followController.whoNotFollowingBack();

result7.then((result) => {
  console.log(result); // Output: ["diff-ymd-package", "Open-Sourced-Org", "username4", "usernameN"]
}); 

whoFollowingBack()

const result8 = followController.whoFollowingBack();

result8.then((result) => {
  console.log(result); // Output: ["farhan7reza7", "username2", "username3", "usernameN"]
}); 

isFollowingBack(username)

// Test case: user is following back
const result9 = followController.isFollowingBack('farhan7reza7');

result9.then((result) => {
  console.log(result); // Output: "Yes, farhan7reza7 following back!"
});  

// Test case: user is not following back
const result10 = followController.isFollowingBack('diff-ymd-package');

result10.then((result) => {
  console.log(result); // Output: "No, diff-ymd-package does not following back!"
}); 

unfollowNotFollowingBack(username)

// Test case: unfollow a user who is not following back
const result11 = followController.unfollowNotFollowingBack('diff-ymd-package');
                 //Console Output: "Unfollowed: diff-ymd-package"

// not needed to console, because internally log message, just only call
result11.then((result) => {
  console.log(result); // Output: "undefined"
}); 

unfollowAllNotFollowingBack()

// Test case: unfollow all users who are not following back
const result12 = followController.unfollowAllNotFollowingBack();
                 /* Console Output: "Unfollowed: Open-Sourced-Org"
                                    "Unfollowed: username2"
                                    "Unfollowed: username3"
                                    "Unfollowed: usernameN"*/
     
// not return anything, and internally log message, just only call
result12.then((result) => {
  console.log(result); // Output: "undefined"
});       
 

API Documentation

ifFollow

Represents a module for managing followers and followings on GitHub.

Create an instance of ifFollow:

const followController = ifFollow(yourUsername, yourToken);
  • yourUsername: Your GitHub username.

  • yourToken: Your GitHub personal access token.

  • Returns: An object containing functions to interact with followers and followings on Github.

Methods:

isFollower(username)

Check if a user is following you.

const isFollowerMessage = followController.isFollower('username');
  • username: The username of the user you want to check.

  • Returns: A message indicating if the user is following you.

isFollowing(username)

Check if you are following a user.

const isFollowingMessage = followController.isFollowing('username');
  • username: The username of the user you want to check.

  • Returns: A message indicating if you are following the user.

totalFollowers()

Get the total number of followers.

const totalFollowersMessage = followController.totalFollowers();
  • Returns: A message with the total number of followers.
totalFollowings()

Get the total number of followings.

const totalFollowingsMessage = followController.totalFollowings();
  • Returns: A message with the total number of followings.
whoNotFollowingBack()

Get a list of users who are not following you back.

const notFollowingBackList = followController.whoNotFollowingBack();
  • Returns: An array of usernames who are not following you back.
whoFollowingBack()

Get a list of users who are following you back.

const followingBackList = followController.whoFollowingBack();
  • Returns: An array of usernames who are following you back.
isFollowingBack(username)

Check if a specific user is following you back.

const isFollowingBackMessage = followController.isFollowingBack('username');
  • username: The username of the user you want to check.

  • Returns: A message indicating if the user is following you back.

unfollowNotFollowingBack(username)

Unfollow a user who is not following you back.

followController.unfollowNotFollowingBack('username');
  • username: The username of the user you want to unfollow.

  • Returns: {Promise} A promise that resolves once the user is unfollowed.

  • Special case: It outputs message in console/terminal indicating which user unfollowed

unfollowAllNotFollowingBack()

Unfollow all users who are not following you back.

followController.unfollowAllNotFollowingBack();
  • Returns: {Promise} A promise that resolves once all users are unfollowed.

  • Special case: It outputs messages in console/terminal indicating which users unfollowed

For more information, See if-follow-package documentation

Contributing

If you find any issues or have suggestions for improvement, please open an issue or create a pull request on the GitHub repository.

See CONTRIBUTING.md for more information.

Best Practices:

The code adheres to recommended practices for readability and maintainability, including:

  • Meaningful variable and function names for clarity.
  • Clear and concise comments to enhance understanding.
  • Proper indentation and formatting for visual organization.

License

This project is licensed under the MIT License - see the LICENSE file for details.

See License

History

For more details about what has changed in each version of this project.
See CHANGELOG.md.

About

`if-follow-package` is a JavaScript library that provides APIs for managing followers and followings on GitHub

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 100.0%