Welcome to GitFriend! π Your AI-powered GitHub assistant, designed to make managing your repositories easier and more efficient than ever before.
GitFriend is a cutting-edge tool built with React, TypeScript, and AI technology to enhance your GitHub experience. Whether you're a developer, project manager, or beginner, GitFriend helps you navigate GitHub with ease, offering features that save you time and improve productivity.
With GitFriend, you can access a variety of powerful tools right at your fingertips:
- AI Chat for GitHub Help: Encountering issues or need guidance? Chat with GitFriend's AI to resolve errors or learn Git and GitHub concepts quickly.
- Dynamic README Generation: Automatically 8000 generate customized README files for your repositories with just a few clicks.
- Commit Emojis: Add fun and meaningful emojis to your Git commits to improve readability and make your commit history stand out.
GitFriend simplifies your GitHub workflows and allows you to focus on what matters most: your projects.
- Google Authentication: Securely log in using your Google account to access all features.
- AI Chat Integration: Get assistance with Git commands, project setup, and more through our integrated AI chat.
- README Generation: Automatically generate professional READMEs for your projects with customizable templates.
- Gitmoji Support: Easily add expressive emojis to your commit messages following the Gitmoji convention.
- User-friendly Interface: Intuitive UI that makes navigation and usage a breeze.
- React Components: Utilizes various React components for interactive and responsive user experience.
We're constantly working to improve Git-Friend. Here are some features we're planning to add:
- GitHub OAuth Integration: Connect directly to your GitHub account to access repositories and more.
- One-Click README Updates: Push generated READMEs directly to your repositories without leaving the app.
- Enhanced README Customization: Add badges, images, and custom sections to your READMEs.
- Custom Prompt Templates: Save and reuse custom prompts for AI-generated content.
- GitHub Activity Dashboard: Track and visualize your GitHub activity.
- Badges In readme: there will be
this
- Star History : Github repo star history
.
- Programming Languages: TypeScript, CSS, JavaScript
- Frameworks/Libraries: React, Next.js, Octokit, Radix UI, Firebase, TailwindCSS
- Development Tools: Node, npm, TypeScript
- AI Integration: Groq
Before you can run Git-Friend on your local machine, make sure you have:
- Node.js (v16 or later)
- npm (v8 or later)
- A Google account for authentication
- Various API keys (see environment setup below)
- Clone the repository:
git clone https://github.com/krishn404/Git-Friend.git
- Navigate into the project directory:
cd Git-Friend
- Install the dependencies:
npm install
β οΈ Note: If you encounter dependency errors during installation, try running the following command:npm install --legacy-peer-deps
Before running Git-Friend locally, make sure to configure the following environment variables in a .env.local
file at the root of your project:
π₯ Firebase Configuration
NEXT_PUBLIC_FIREBASE_API_KEY=your_firebase_api_key
NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=your_firebase_auth_domain
NEXT_PUBLIC_FIREBASE_PROJECT_ID=your_firebase_project_id
NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET=your_firebase_storage_bucket
NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=your_firebase_messaging_sender_id
NEXT_PUBLIC_FIREBASE_APP_ID=your_firebase_app_id
FIREBASE_PRIVATE_KEY=your_firebase_private_key
FIREBASE_CLIENT_EMAIL=your_firebase_client_email
Other Configuration
GITHUB_ACCESS_TOKEN=your_github_access_token
GROQ_API_KEY=your_groq_api_key
UPSTASH_REDIS_REST_TOKEN=your_upstash_redis_token
UPSTASH_REDIS_REST_URL=your_upstash_redis_url
- Start the development server:
npm run dev
Now, you can access Git-Friend at http://localhost:3000
.
- Navigate to the homepage and click on "Login with Google"
- Complete the Google authentication flow
- You'll be redirected to the dashboard upon successful login
- From the dashboard, select "README Generator"
- Enter your project details (name, description, tech stack)
- Customize the sections you want to include
- Click "Generate README"
- Preview the generated README and make any needed adjustments
- Download the README or copy to clipboard
- Navigate to the "AI Chat" section
- Type your question about Git or GitHub
- Receive instant AI-powered assistance
- Go to the "Gitmoji" section from the dashboard
- Browse through available emojis categorized by commit type
- Click on an emoji to copy the corresponding code
- Use in your commit messages for semantic versioning
Use Git-Friend to quickly generate professional READMEs for your open source projects, making them more accessible to potential contributors.
Maintain consistency across your team's repositories by using standardized README templates and commit message practices with Gitmoji.
Get assistance with Git commands and best practices through the AI chat feature.
Streamline the process of creating and updating documentation with AI-powered README generation and formatting.
Thank you for considering contributing to this project! To keep things organized and collaborative, please follow the steps below when contributing:
Before starting any work, contributors must raise an issue and follow the issue template.
When creating an issue, please include the following:
-
Title: Concise summary (e.g.,
Fix broken login redirect
) -
Type: Bug report / Feature request / Improvement
-
Description:
- What is the bug, error, or issue?
- Where did you encounter it?
- Any relevant logs, screenshots, or screen recordings?
-
Proposed Solution:
- How do you plan to fix or implement it?
- Any tools, libraries, or dependencies you intend to use?
Once the issue is created, a maintainer will review it.
π« Do NOT start working on any issue unless it has been assigned to you by a maintainer.
To get assigned:
- Raise a clear and descriptive issue using the template above.
- Comment:
I would like to work on this
. - Wait for a maintainer to review and assign the issue to you.
Only after assignment should you begin working on your contribution.
-
Fork this repository.
-
Clone your fork locally:
git clone https://github.com/krishn404/Git-Friend.git cd your-repo-name
-
Create a new branch:
git checkout -b fix/your-issue-title
-
Make your changes with clear and meaningful commits.
-
Ensure all tests and linters pass.
-
Push your branch and open a Pull Request referencing the issue number.
Thanks for helping improve this project! π and Feel free to ask questions by commenting on issues or reaching out directly on my mail