Turn your GitHub Profile into a living, breathing virtual pet habitat! πΎ
This is the actual pet generated for ThanhNguyxn, updated daily at 00:00 UTC:
Profile-Gotchi is a GitHub Action that generates a dynamic, pixel-art SVG of a virtual pet. Your pet's species and mood evolve based on your coding activity!
- Dynamic Evolution: Your pet changes species based on your top programming language.
- Mood System: Keep your pet happy by committing code daily!
- Zero Config: Works out of the box with sensible defaults.
- Lightweight: Generates a simple SVG, no heavy images.
Your coding habits determine your companion. View the full Pet Gallery here.
| Language | Pet Species | Icon |
|---|---|---|
| JavaScript / TypeScript | Spider | π·οΈ |
| Python | Snake | π |
| Go | Gopher | πΉ |
| Rust | Crab | π¦ |
| PHP | Elephant | π |
| Java | Coffee | β |
| Swift | Bird | ποΈ |
| C++ / C# | Robot | π€ |
| C | Gear | βοΈ |
| Kotlin | Fox | π¦ |
| Dart | Hummingbird | π¦ |
| Scala | Ladder | πͺ |
| R | Owl | π¦ |
| Perl | Camel | πͺ |
| Shell | Tux | π§ |
| Ruby | Gem | π |
| HTML / CSS | Chameleon | π¦ |
| Lua | Capybara | 𦫠|
| Julia | Alpaca | π¦ |
| Elixir | Phoenix | π₯ |
| Others | Cat | π± |
| Star π or Fork π΄ | Unicorn | π¦ |
| Priority | State | Condition | Icon |
|---|---|---|---|
| 1 | Ghost | No commits for 7+ days | π» |
| 2 | Sleeping | No commits today (active in last 7 days) | π€ |
| 3 | Hyper | 10+ commits in last 24h | π₯ |
| 4 | Night Owl | Last commit between 00:00-04:00 (local time) | π¦ |
| 5 | Weekend Chill | Saturday/Sunday + < 3 commits | ποΈ |
| 6 | Happy | Default active state | β‘ |
NEW in v2.0.0: Each mood has unique pixel art with distinct eye styles!
Your pet evolves as you level up! Each evolution stage brings visual changes and effects.
| Stage | Levels | Icon | Effects |
|---|---|---|---|
| Egg | 1-5 | π₯ | 70% size, no effects |
| Baby | 6-15 | π£ | 85% size, growing! |
| Juvenile | 16-30 | π± | 95% size, green aura |
| Adult | 31-50 | β | 100% size, gold aura |
| Master | 51-75 | π« | 105% size, purple aura + sparkles |
| Legendary | 76-99 | π | 110% size, orange aura + sparkles |
| Mythical | 100 | π | 115% size, cyan aura + floating runes |
| π₯ Egg | π± Juvenile | β Adult | π Legendary | π Mythical |
|---|---|---|---|---|
Pro Tip: When you're close to evolving (within 2 levels), you'll see a β¨ Evolution Ready! β¨ indicator!
Your pet automatically wears holiday accessories based on the current date!
| π Christmas | π New Year | π Valentine | π Halloween |
|---|---|---|---|
Also includes: π§§ Tet (Lunar New Year), πΉ Women's Day, β Programmer Day, π© Men's Day. Easter Eggs: π» Friday 13th, π€‘ April Fools.
View full Event Calendar in Gallery
Follow these steps to add a pet to your profile:
- In your repository (e.g.,
username/username), go to the Actions tab. - Click New workflow -> set up a workflow yourself.
- Name the file
profile-gotchi.yml. - Paste the following code:
name: Profile Gotchi
on:
schedule:
- cron: '0 0 * * *' # Updates daily at 00:00 UTC
workflow_dispatch: # Allows manual trigger
jobs:
update-pet:
permissions:
contents: write
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Generate Pet πΎ
uses: ThanhNguyxn/Git-Gotchi@main
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
username: ${{ github.repository_owner }}
# Optional: Advanced Configuration
timezone: 'UTC' # Recommended for international users
background_theme: 'minimal' # Options: 'minimal', 'cyberpunk', 'nature'
show_level: 'true' # Show level stats on pet
- name: Commit & Push πΎ
run: |
git config --global user.name 'github-actions[bot]'
git config --global user.email 'github-actions[bot]@users.noreply.github.com'
git add dist/pet.svg
git commit -m "Update Profile-Gotchi πΎ" || exit 0
git pushSet your local timezone for accurate mood detection (Night Owl, Weekend Chill).
timezone: 'UTC' # Recommended for international (default)
timezone: 'America/New_York' # US Eastern
timezone: 'Europe/London' # UK
timezone: 'Asia/Tokyo' # Japan
timezone: 'Australia/Sydney' # AustraliaFind your timezone: Use IANA timezone format. Common examples:
America/Los_Angeles,Europe/Paris,Asia/Singapore.
Choose a visual style for your pet's background.
| Theme | Preview | Description |
|---|---|---|
minimal |
Clean, subtle gradient (default) | |
cyberpunk |
Neon purple grid, futuristic | |
nature |
Green meadow with clouds |
background_theme: 'minimal' # Default - clean look
background_theme: 'cyberpunk' # Neon vibes π
background_theme: 'nature' # Outdoor feel πΏDisplay your coding level and XP progress on the pet.
show_level: 'true' # Show level (default)
show_level: 'false' # Hide level - pet onlyXP Formula: Every commit = 10 XP. Level up by coding more!
- name: Generate Pet πΎ
uses: ThanhNguyxn/Git-Gotchi@main
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
username: ${{ github.repository_owner }}
# π Timezone (for Night Owl & Weekend detection)
timezone: 'UTC'
# π¨ Theme (minimal, cyberpunk, nature)
background_theme: 'cyberpunk'
# π Show level stats
show_level: 'true'Ensure your workflow has permission to write to the repository:
- Go to Settings -> Actions -> General.
- Scroll down to Workflow permissions.
- Select Read and write permissions.
- Click Save.
Edit your README.md and add the following markdown where you want the pet to appear:
### My Coding Pet πΎ
| Input | Description | Required | Default |
|---|---|---|---|
github_token |
Your GitHub Token. Use ${{ secrets.GITHUB_TOKEN }}. |
β | N/A |
username |
The GitHub username to track. | β | N/A |
Note
Security Note: The ${{ secrets.GITHUB_TOKEN }} is a standard, temporary token automatically provided by GitHub Actions. It is safe to use in your workflow file and does not expose your personal access tokens or secrets.
Contributions are welcome! Feel free to open an issue or submit a Pull Request.
- Fork the project
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Made with β€οΈ by ThanhNguyxn