This document explains how to create a fresh Git repository with a clean history and deploy to GitHub.
The current Git history contains:
- Development logs and internal notes
- Absolute file paths from the development machine
- Old experimental code and iterations
- Private session summaries and debugging notes
A fresh Git history provides:
- Clean, professional commit history
- Only production-ready code
- No sensitive development artifacts
- Better onboarding for contributors
Before creating the fresh repository, verify:
- All sensitive information removed
- Old development markdown files deleted
- Python scripts removed
- Documentation updated and cleaned
- .gitignore comprehensive and accurate
- LICENSE file added
- CONTRIBUTING.md created
- README.md professional and complete
- CHANGELOG.md created
- Release ZIP file in
release/directory - All package.json files updated with correct URLs
- No hardcoded usernames or paths remain
- Build tested and working
# Navigate to project directory
cd /path/to/ProxyMe
# Create a backup of current state (optional but recommended)git tag -a backup-before-release -m "Backup before fresh history"
git checkout --orphan fresh-main
git add -A
git commit -m "Initial release: ProxyMe v2.1.0
ProxyMe - AI Proxy Management Plugin for JetBrains Rider IDE
Features:
- Dynamic model control - only enabled models appear in Rider
- Per-model temperature and streaming configuration
- Secure API key management
- Template system for quick setup
- Real-time proxy status monitoring
- Support for multiple AI providers (DeepSeek, Perplexity, Anthropic, OpenAI)
This is an alpha release built with AI assistance (Claude Sonnet 4.5). Contributions welcome for bug fixes, security improvements, and testing."
git log --oneline
### Step 2: Prepare GitHub Repository
1. **Go to GitHub:** https://github.com/native-apps
2. **Create new repository:**
- Name: `proxyme`
- Description: `AI Proxy Management Plugin for JetBrains Rider IDE`
- Visibility: **Public**
- **DO NOT** initialize with README, .gitignore, or LICENSE (we already have them)
3. **Click "Create repository"**
### Step 3: Push to GitHub
```bash
# Add GitHub remote (replace with your actual URL)
git remote remove origin # Remove old origin if exists
git remote add origin https://github.com/native-apps/proxyme.git
# Push fresh history to main branch
git push -u origin fresh-main:main --force
# Verify on GitHub
# Open: https://github.com/native-apps/proxyme
-
Add repository description:
AI Proxy Management Plugin for JetBrains Rider IDE - Configure multiple AI models, control which models are available, and manage API keys securely -
Add topics/tags:
riderjetbrainsai-assistantpluginproxy-serverdeepseekperplexityanthropicopenaiide-pluginrider-plugin
-
Update repository settings:
- Enable Issues
- Enable Discussions (recommended)
- Enable Wiki (optional)
- Enable Projects (optional)
-
Create branch protection rules (Settings → Branches):
- Branch name pattern:
main - ☑ Require pull request reviews before merging
- ☑ Require status checks to pass
- ☑ Require branches to be up to date
- Branch name pattern:
- Go to Releases: https://github.com/native-apps/proxyme/releases
- Click "Create a new release"
- Create tag:
v2.1.0 - Release title:
ProxyMe v2.1.0 - Dynamic Model Control - Description:
# ProxyMe v2.1.0 - Dynamic Model Control
**First Public Release** 🎉
ProxyMe is an AI Proxy Management Plugin for JetBrains Rider IDE that lets you configure multiple AI models, control which models are available to Rider's AI Assistant, and manage API keys securely.
## 🎯 Key Features
- **Dynamic Model Control** - Only enabled models appear in Rider AI Assistant
- **Per-Model Settings** - Temperature (0.0-2.0) and streaming control per model
- **Secure API Keys** - Stored in `~/.proxyme/` outside project directories
- **Template System** - Quick setup with built-in presets
- **Multiple Providers** - DeepSeek, Perplexity, Anthropic, OpenAI, and custom
## 📦 Installation
1. Download `ProxyMe-2.1.0.zip` below
2. In Rider: `File → Settings → Plugins → ⚙️ → Install Plugin from Disk`
3. Select the ZIP file and restart Rider
4. Configure via `Tools → ProxyMe`
See [INSTALL.md](https://github.com/native-apps/proxyme/blob/main/INSTALL.md) for detailed instructions.
## ⚠️ Important Notices
- **Only tested with Rider IDE** - Use with other JetBrains IDEs at your own risk
- **Alpha software** - Contains AI-generated code, expect bugs
- **Security review needed** - Contributions welcome
## 📖 Documentation
- [Installation Guide](https://github.com/native-apps/proxyme/blob/main/INSTALL.md)
- [Build Instructions](https://github.com/native-apps/proxyme/blob/main/BUILD.md)
- [Troubleshooting](https://github.com/native-apps/proxyme/blob/main/TROUBLESHOOTING.md)
- [Contributing](https://github.com/native-apps/proxyme/blob/main/CONTRIBUTING.md)
## 🤝 Contributing
We need your help! This project needs:
- Bug fixes and stability improvements
- Security review
- Testing with other JetBrains IDEs
- Documentation improvements
See [CONTRIBUTING.md](https://github.com/native-apps/proxyme/blob/main/CONTRIBUTING.md)
## 📋 Changelog
See [CHANGELOG.md](https://github.com/native-apps/proxyme/blob/main/CHANGELOG.md) for detailed changes.
## 📄 License
MIT License - See [LICENSE](https://github.com/native-apps/proxyme/blob/main/LICENSE)
---
**Ready to get started?** Download the ZIP, install in Rider, and configure your first AI model!-
Upload release asset:
- Click "Attach binaries"
- Upload
release/ProxyMe-2.1.0.zip
-
Set as latest release: ☑ Check the box
-
Click "Publish release"
After pushing, verify these files appear correctly:
- ✅ README.md displays with badges and proper formatting
- ✅ LICENSE file recognized (shows MIT in sidebar)
- ✅ CONTRIBUTING.md appears in contributor dropdown
- ✅ CHANGELOG.md accessible
- ✅ docs/ directory structure intact
Create .github/ISSUE_TEMPLATE/ directory with templates:
Bug Report Template:
name: Bug Report
about: Report a bug or issue
title: '[BUG] '
labels: bug
assignees: ''
---
**Describe the bug**
A clear description of what the bug is.
**To Reproduce**
Steps to reproduce:
1. Go to '...'
2. Click on '...'
3. See error
**Expected behavior**
What you expected to happen.
**Screenshots**
If applicable, add screenshots.
**Environment:**
- ProxyMe version: [e.g. 2.1.0]
- Rider version: [e.g. 2024.3]
- OS: [e.g. macOS 14.5]
- Node.js version: [e.g. v20.0.0]
**Logs**
Paste relevant logs from ~/.proxyme/logs/Feature Request Template:
name: Feature Request
about: Suggest a new feature
title: '[FEATURE] '
labels: enhancement
assignees: ''
---
**Is your feature request related to a problem?**
A clear description of the problem.
**Describe the solution you'd like**
What you want to happen.
**Describe alternatives you've considered**
Alternative solutions or features.
**Additional context**
Any other context or screenshots.Create .github/workflows/build.yml for CI/CD:
name: Build
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'temurin'
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Build plugin
run: ./gradlew buildPlugin
- name: Upload build artifacts
uses: actions/upload-artifact@v3
with:
name: ProxyMe-Plugin
path: build/distributions/*.zipAdd these to the top of README.md:
[](https://github.com/native-apps/proxyme/releases)
[](https://github.com/native-apps/proxyme/releases)
[](LICENSE)
[](https://www.jetbrains.com/rider/)Share on:
- Reddit (r/jetbrains, r/csharp, r/dotnet)
- Twitter/X
- Dev.to
- Hacker News
To publish on JetBrains Marketplace:
- Create account at https://plugins.jetbrains.com/
- Submit plugin for review
- Follow their guidelines
- Wait for approval
For subsequent releases:
# Create new version
git checkout main
git pull origin main
# Make changes, commit normally
git add .
git commit -m "feat: Add new feature"
git push origin main
# Tag new version
git tag -a v2.2.0 -m "Release v2.2.0"
git push origin v2.2.0
# Create GitHub release (repeat Step 5 above)After successful deployment:
# Delete old branches
git branch -D main # Delete old main if it exists
# Rename fresh-main to main locally
git branch -m fresh-main main
# Clean up old remotes
git remote prune origin- GitHub repository created and configured
- Fresh Git history pushed
- v2.1.0 release published with ZIP file
- README.md displays correctly on GitHub
- LICENSE recognized by GitHub
- Issues enabled
- Discussions enabled (optional)
- Branch protection rules set
- Issue templates created
- GitHub Actions configured (optional)
- Repository topics/tags added
- Release announced (optional)
If you encounter issues during release:
- Check GitHub's documentation: https://docs.github.com/
- Verify all files are properly formatted
- Ensure no sensitive information remains
- Test clone from GitHub to verify everything works
Your project is now live and ready for community contributions!
Repository: https://github.com/native-apps/proxyme
Next steps:
- Monitor issues and discussions
- Review pull requests
- Update documentation as needed
- Plan next release features
Thank you for open sourcing ProxyMe! 🚀