Coder Social home page Coder Social logo

import-stars's Introduction

๐Ÿ”ฎ๐ŸŒ‹GitHub Star Import๐Ÿ’ซ๐Ÿš€

"Truly the best repo ever made" - BrycensRanch

Switched your GitHub account? Well, this CLI powered by Node.js has got you covered. Import starred repos from a another user's account using GitHub's extensive API and a PAT (Personal Access Token) (Classic, needs repo and user scopes)

Usage

# Root command
Usage: import-stars [options] [command]

Import another GitHub user's stars

Options:
  -V, --version   output the version number
  -h, --help      display help for command

Commands:
  star [options]  Import or rather merge a GitHub user's stars to your own account
  help [command]  display help for command

# Star a user's repos
Usage: import-stars star [options]

Import or rather merge a GitHub user's stars to your own account

Options:
  -c, --computer            Computer friendly output
  -b, --bypass              Bypass Validation
  -d, --dryrun              Dry run, doesn't actually star repos, just fetches them and outputs it
  -t, --target <user>       Target GitHub user that be the 'source' of list of projects to star
  -g, --ghToken <token>     GITHUB_TOKEN (PAT) Passing this option is insecure because it can be seen on your shell history. Use with caution.
  -w, --wait-time <number>  How long in milliseconds to wait between requests to GitHub. Added to prevent API Abuse (default: 1 second)
  -h, --help                display help for command

๐Ÿ—๏ธ Coming Soon? ๐Ÿšง

  • Import lists as well by default
  • Filtering GitHub repos that you want to star by date.
  • Manual starring? (You manually select which repos you want to star)
  • Unit Tests / E2E testing maybe? Idk.
  • Unstarring in general
  • Unstar repos another user has starred

Versioning

We use SemVer along with Semantic Release

Types

The types on this project are horrid. But hey, it works. Definitely a mistake to try and use TypeScript for this project. If you have any better TypeScript projects I could use to create a CLI, please leave an issue.

Alternatives

There are some other alternatives now when I look up GitHub star transfer, but they don't run as fast as us with minimum code! Such as:

Building this project

pnpm install
pnpm build
node dist/bin/index.js --help

Contributing

Although this is a small project, I wanted to make sure the project still follows standards set by other developers, hence I am not trying to reinvent the wheel with this project. Hence why Husky and ESLint and Prettier is included in this repo.

Tools such as Commitizen or Commitlint are used to help contributors and enforce valid commits/ messages.

import-stars's People

Contributors

brycensranch avatar dependabot[bot] avatar renovate[bot] avatar

Stargazers

 avatar  avatar

Watchers

 avatar

Forkers

anothersesar

import-stars's Issues

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

Rate-Limited

These updates are currently rate-limited. Click on a checkbox below to force their creation now.

  • chore(deps): update dependency husky to v8.0.3
  • chore(deps): update dependency prettier to v2.8.8
  • chore(deps): update commitlint monorepo to v17.8.1 (@commitlint/cli, @commitlint/config-conventional, @commitlint/cz-commitlint)
  • chore(deps): update dependency @types/node to v20.12.7
  • chore(deps): update dependency commitizen to v4.3.0
  • chore(deps): update dependency eslint to v8.57.0
  • chore(deps): update dependency eslint-config-airbnb-typescript to v17.1.0
  • chore(deps): update dependency eslint-config-prettier to v9.1.0
  • chore(deps): update dependency eslint-plugin-import to v2.29.1
  • chore(deps): update dependency eslint-plugin-jest to v27.9.0
  • chore(deps): update dependency eslint-plugin-you-dont-need-lodash-underscore to v6.14.0
  • chore(deps): update dependency lint-staged to v13.3.0
  • chore(deps): update dependency ts-jest to v29.1.2
  • chore(deps): update dependency typescript to v5.4.5
  • chore(deps): update jest monorepo (@jest/globals, @types/jest, jest)
  • chore(deps): update typescript-eslint monorepo to v5.62.0 (@typescript-eslint/eslint-plugin, @typescript-eslint/parser)
  • fix(deps): update dependency chalk to v5.3.0
  • fix(deps): update dependency date-fns to v2.30.0
  • fix(deps): update dependency figlet to v1.7.0 (figlet, @types/figlet)
  • fix(deps): update dependency inquirer to v9.2.20 (inquirer, @types/inquirer)
  • chore(deps): update dependency eslint to v9
  • chore(deps): update dependency eslint-config-airbnb-typescript to v18
  • chore(deps): update dependency eslint-plugin-jest to v28
  • chore(deps): update dependency eslint-plugin-simple-import-sort to v12
  • chore(deps): update dependency husky to v9
  • fix(deps): update dependency @commander-js/extra-typings to v12
  • fix(deps): update dependency commander to v12
  • ๐Ÿ” Create all rate-limited PRs at once ๐Ÿ”

Open

These updates have all been created already. Click a checkbox below to force a retry/rebase of any.

Detected dependencies

npm
package.json
  • @commander-js/extra-typings ^11.0.0
  • chalk ^5.2.0
  • commander ^11.0.0
  • date-fns ^2.29.3
  • figlet ^1.5.2
  • got ^13.0.0
  • inquirer ^9.0.0
  • ora ^7.0.0
  • @commitlint/cli ^17.3.0
  • @commitlint/config-conventional ^17.3.0
  • @commitlint/cz-commitlint ^17.3.0
  • @jest/globals ^29.3.1
  • @types/figlet ^1.5.5
  • @types/inquirer ^9.0.3
  • @types/jest ^29.2.4
  • @types/node ^20.0.0
  • @typescript-eslint/eslint-plugin ^5.47.0
  • @typescript-eslint/parser ^5.47.0
  • commitizen ^4.2.6
  • cross-env ^7.0.3
  • eslint ^8.30.0
  • eslint-config-airbnb-base ^15.0.0
  • eslint-config-airbnb-typescript ^17.0.0
  • eslint-config-prettier ^9.0.0
  • eslint-plugin-import ^2.26.0
  • eslint-plugin-jest ^27.1.7
  • eslint-plugin-jest-formatting ^3.1.0
  • eslint-plugin-prettier ^4.2.1
  • eslint-plugin-simple-import-sort ^10.0.0
  • eslint-plugin-unused-imports ^2.0.0
  • eslint-plugin-you-dont-need-lodash-underscore ^6.12.0
  • execa ^8.0.0
  • husky ^8.0.2
  • jest ^29.3.1
  • lint-staged ^13.1.0
  • prettier ^2.8.1
  • prettier-eslint-cli ^7.1.0
  • ts-jest ^29.0.3
  • typescript ^5.0.0
nvm
.nvmrc

  • Check this box to trigger a request for Renovate to run again on this repository

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.