https://github.com/stahnma/noodles
Search GitHub for specific things in READMEs
https://github.com/stahnma/noodles
api github
Last synced: about 2 months ago
JSON representation
Search GitHub for specific things in READMEs
- Host: GitHub
- URL: https://github.com/stahnma/noodles
- Owner: stahnma
- License: wtfpl
- Created: 2024-04-17T22:54:14.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-04-17T23:14:44.000Z (about 2 years ago)
- Last Synced: 2024-04-17T23:46:40.206Z (about 2 years ago)
- Topics: api, github
- Language: Go
- Homepage:
- Size: 0 Bytes
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Noodles
---
Why is this named noodles? Because, I said I would noodle on it.
# GitHub Repository Search Tool
This tool allows you to search GitHub repositories to find those that contain a specific string in their README files and meet a minimum star requirement.
## Requirements
- Go (1.16 or later)
- A GitHub Personal Access Token
- Make
If you want this to run in a lambda, then you you'll want:
- AWSCLI2
- jq (perhaps for debugging)
## Installation
First, clone the repository or download the source code. Then navigate to the directory containing the source code.
## Configuration
Before running the script, you must set your GitHub Personal Access Token as an environment variable:
export GITHUB_TOKEN="your_github_token_here"
Ensure this token is set in your shell environment where you plan to run the script.
## Building
flox activate
go mod tidy
go build .
## Running as via serverless
The `Makefile` contains targets to set up or update the code for the lambda.
:warning: You will still need something to trigger the lambda, such as an API
Gateway. Setting that up not covered in this README.
To update the lambda: `make aws`
To create the initial lambda `make aws-init`
## Usage
The tool is executed from the command line, where you can specify the search string and the minimum number of stars:
./noodles -stars= ""
### Parameters
- ``: The minimum number of stars a repository must have to be included in the search results. This is optional and defaults to 1000 if not specified.
- ``: The string to search for in the README files of repositories.
### Examples
To search for repositories that include "nvm use" in their README and have at least 1500 stars:
./noodles -stars=1500 "nvm use"
To search for repositories with the default star setting (1000 stars) that include "pip install":
./noodles "pip install"
## Contributing
Contributions are welcome! Please feel free to submit pull requests or open issues to suggest improvements or add new features.
# Demo stuff
If you want a demo using Flox to do some neat things, this is a good project for that.
You can:
1. Build `noodles` and then set it up as a Lambda. If you've configured the lambda and API Gateway, you can then run the lambda from the API Gateway using `make aws` from the `noodles` directory.
2. There is a front end in the `front` directory. It uses `flox services` to show off the services component and runs a web application and proxy to get around CORS restrictions from API gateway.
To run the front end
cd front
flox activate -s
## License
WTFPL