Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/davgonsan/github-user-activity
A way to get the last GitHub User Activity from the CLI
https://github.com/davgonsan/github-user-activity
backend github-api js nestjs ts
Last synced: 6 days ago
JSON representation
A way to get the last GitHub User Activity from the CLI
- Host: GitHub
- URL: https://github.com/davgonsan/github-user-activity
- Owner: davgonsan
- Created: 2024-11-09T04:32:17.000Z (7 days ago)
- Default Branch: master
- Last Pushed: 2024-11-09T13:09:28.000Z (7 days ago)
- Last Synced: 2024-11-09T14:19:41.677Z (7 days ago)
- Topics: backend, github-api, js, nestjs, ts
- Language: TypeScript
- Homepage:
- Size: 96.7 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
[circleci-image]: https://img.shields.io/circleci/build/github/nestjs/nest/master?token=abc123def456
[circleci-url]: https://circleci.com/gh/nestjs/nest
A progressive Node.js framework for building efficient and scalable server-side applications.
## GitHub User Activity CLI
This project is a Command-Line Interface (CLI) application built with NestJS that fetches and displays user activity data from the GitHub API. The application allows users to input a GitHub username, retrieves the latest activities for that user, and displays them in a structured format in the terminal.
See other projects and ideas in [roadmap.sh](https://roadmap.sh/projects/github-user-activity).## Features
* Fetch GitHub Activity: Retrieves recent events such as repository watching, code pushes, and public activity for a specified GitHub user.
* Customizable Event Limit: Users can specify a maximum number of events to display, providing flexibility in the amount of data returned.
* Formatted Output: Each event is displayed with a clear timestamp, event type, and repository name to make the output easy to read.## Error Handling: Gracefully handles various error scenarios
* Invalid usernames
* Exceeding the GitHub API rate limit
* Network and API errors with user-friendly messages## Technical Details
* NestJS: A scalable and maintainable framework, ideal for structuring the CLI as a modular, testable application.
* TypeScript: Ensures type safety, improving code reliability and maintainability.
* date-fns: Formats event timestamps to make them human-readable.## Project setup
```bash
$ npm install
```## How to use
1. Run the Application: After compiling the project, run it from the terminal with:
```bash
node dist/main.js
```
Replace **username** with the GitHub username you want to check and **maxEvents** (optional) with the number of recent events to fetch.2. Example:
```bash
npm run start:cli -- octocat 5
```## Potential Future Enhancements
* Filter by Event Type: Allow users to specify event types they’re interested in (e.g., PushEvent).
* Save Output to File: Add an option to save activity logs to a file for later review.
* Extended Data: Retrieve additional details about each event, like commit messages or repository descriptions.## Deployment
When you're ready to deploy your NestJS application to production, there are some key steps you can take to ensure it runs as efficiently as possible. Check out the [deployment documentation](https://docs.nestjs.com/deployment) for more information.
If you are looking for a cloud-based platform to deploy your NestJS application, check out [Mau](https://mau.nestjs.com), our official platform for deploying NestJS applications on AWS. Mau makes deployment straightforward and fast, requiring just a few simple steps:
```bash
$ npm install -g mau
$ mau deploy
```With Mau, you can deploy your application in just a few clicks, allowing you to focus on building features rather than managing infrastructure.
## Resources
Check out a few resources that may come in handy when working with NestJS:
- Visit the [NestJS Documentation](https://docs.nestjs.com) to learn more about the framework.
- For questions and support, please visit our [Discord channel](https://discord.gg/G7Qnnhy).
- To dive deeper and get more hands-on experience, check out our official video [courses](https://courses.nestjs.com/).
- Deploy your application to AWS with the help of [NestJS Mau](https://mau.nestjs.com) in just a few clicks.
- Visualize your application graph and interact with the NestJS application in real-time using [NestJS Devtools](https://devtools.nestjs.com).
- Need help with your project (part-time to full-time)? Check out our official [enterprise support](https://enterprise.nestjs.com).
- To stay in the loop and get updates, follow us on [X](https://x.com/nestframework) and [LinkedIn](https://linkedin.com/company/nestjs).
- Looking for a job, or have a job to offer? Check out our official [Jobs board](https://jobs.nestjs.com).## Support
Nest is an MIT-licensed open source project. It can grow thanks to the sponsors and support by the amazing backers. If you'd like to join them, please [read more here](https://docs.nestjs.com/support).
## License
Nest is [MIT licensed](https://github.com/nestjs/nest/blob/master/LICENSE).