=== Projects Manager for GitHub === Contributors: umeralifarooq Tags: github, portfolio, projects, repository, api Requires at least: 5.2 Tested up to: 6.9 Stable tag: 1.0.0 Requires PHP: 7.2 License: GPLv2 or later License URI: http://www.gnu.org/licenses/gpl-2.0.html Fetch public GitHub repositories via API and display them as native WordPress projects with your theme's header and footer. == Description == **Projects Manager for GitHub** allows you to showcase your GitHub portfolio on your WordPress site effortlessly. Simply enter a GitHub username, and the plugin will fetch all public repositories. You can then import specific repositories as "Projects" (Custom Post Types) to your site. The plugin imports: * Repository Name & Description * Star, Fork, & Watcher Counts * Primary Language & Topics * Creation & Update Dates * **Full README content** (displays below the project details) It integrates seamlessly with your active theme, ensuring your header, footer, and styles remain consistent. = Features = * **AJAX-based Fetching:** Search for any GitHub user and fetch their repositories instantly without page reloads. * **One-Click Import:** Add repositories to your site with a single click. * **Duplicate Prevention:** Checks if a repository already exists to prevent duplicates. * **Clean Integration:** Uses WordPress's standard `the_content` filter to append repository data, ensuring compatibility with almost all themes and page builders. * **Security First:** Built with strict sanitization, capability checks, and nonce verification. == External Services == This plugin connects to the **GitHub API** (api.github.com) to fetch public repository information. This is required for the core functionality of displaying GitHub repositories on your WordPress site. **What data is sent:** * GitHub username (when searching for repositories) * Repository owner and name (when fetching README files) **When data is sent:** * When you click "Fetch Repository" in the admin dashboard * When you import a repository to create a new project (to fetch README content) **Service provider:** * GitHub, Inc. * Terms of Service: https://docs.github.com/en/site-policy/github-terms/github-terms-of-service * Privacy Policy: https://docs.github.com/en/site-policy/privacy-policies/github-privacy-statement **Note:** This plugin uses the public GitHub API which does not require authentication. No personal data from your WordPress site or your users is sent to GitHub. == Installation == 1. Upload the plugin files to the `/wp-content/plugins/projects-manager-for-github` directory, or install the plugin through the WordPress plugins screen directly. 2. Activate the plugin through the 'Plugins' screen in WordPress. 3. Go to the **GitHub Projects** menu in your dashboard. 4. Enter a GitHub username (e.g., `facebook` or `vercel`) and click "Fetch Repository". 5. Click the "+" button to import a repository to your site. == Frequently Asked Questions == = Why do I see a 404 Page Not Found error when viewing a project? = This is a common issue with new Custom Post Types in WordPress. **Solution:** 1. Go to **Settings > Permalinks** in your WordPress dashboard. 2. Scroll down and click the **Save Changes** button. You do not need to change any settings; simply clicking save flushes the rewrite rules and fixes the 404 error. = Does this plugin require a GitHub API Key? = No, it uses the public GitHub API, which allows for a reasonable number of requests without authentication. = Will this work with my theme? = Yes! The plugin is designed to inject repository details into your theme's standard content area, so it respects your theme's header, footer, and styling. == Screenshots == 1. **Dashboard Hub** - Easily search for GitHub users and view their repositories. 2. **Imported Project** - How a single project looks on the frontend with metadata and README. == Changelog == = 1.0.0 = * Initial release. * Added feature to fetch public repositories by username. * Implemented Custom Post Type 'All Projects'. * Added automatic README fetching and display.