GitFull is a web application that generates summaries of GitHub repositories. It uses the GitHub API and natural language processing techniques to provide an overview of a repository's contents, including its files, technologies used, and key features. This project is designed for developers, researchers, and anyone interested in quickly understanding the structure and purpose of a GitHub repository.
The application allows users to authenticate with GitHub, select a repository, and view a summary of its contents. The summary includes information about the repository's files, technologies used, and key features. The application also provides a README editor, which allows users to edit and preview a README file for the selected repository.
- Repository Summarization: Generate summaries of GitHub repositories using natural language processing techniques
- GitHub Authentication: Authenticate with GitHub to access repository data
- README Editor: Edit and preview README files for selected repositories
- Technology Stack Detection: Detect technologies used in a repository
- File Tree Visualization: Visualize the file tree of a repository
graph TD;
src-->app;
src-->components;
src-->lib;
app-->actions;
app-->api;
app-->pages;
components-->socialCards;
components-->tabBar;
lib-->utils;
lib-->mongodb;
To run the project locally, follow these steps:
- Clone the repository:
git clone https://github.com/abhraneeldhar7/gitfull.git - Install dependencies:
npm installoryarn install - Start the development server:
npm run devoryarn dev
The project uses GitHub Actions to automate tasks such as crediting tokens to users. The .github/workflows/credit-tokens.yml file defines a workflow that runs a cron job to execute the /api/credit-tokens endpoint.
The project uses Vercel as its deployment platform. The vercel.json file defines a configuration that schedules a cron job to run the /api/credit-tokens endpoint.
The project exposes several API endpoints, including:
/api/auth/[...nextauth]/route.ts: NextAuth API route handler for authentication/api/credit-tokens/route.ts: API endpoint that credits tokens to all users
The project consists of several files and directories. Here are some key files:
app/api/auth/[...nextauth]/route.ts: NextAuth API route handler for authenticationapp/api/credit-tokens/route.ts: API endpoint that credits tokens to all userslib/mongodbCS.ts: MongoDB connection file that provides a function to get a database instancecomponents/readmeEditor/readmeEditor.tsx: README editor component that allows users to edit and preview README fileslib/utils.ts: Utility module that exports various functions for tasks such as string manipulation and date formatting
Full-stack developer with experience in web, Android, and server development. Most projects are private due to being production code.