Code Climbers for Visual Studio Code
Code Climbers is Dedicated to developers who want to learn and share how they git gud at their craft 🦾. This is a VSCode Extension that report time to the Code Climbers CLI
Installation
Press F1
or ⌘ + Shift + P
and type install
. Pick Extensions: Install Extension
.
Type code climbers
and hit enter
.
Enter your [api key][api key], then press enter
.
(If you’re not prompted, press F1
or ⌘ + Shift + P
then type Code Climbers API Key
.)
Use VSCode normally and your coding activity will be displayed on your Code Climbers dashboard
Usage
Visit https://local.codeclimbers.io to see your coding activity.
Tech
Code Climbers uses the incredible work done by Alan Hamlet and the WakaTime team!
Configuring
VS Code specific settings are available from ⌘ + Shift + P
, then typing code climbers
.
For example, to hide today's coding activity in your status bar:
Press ⌘ + Shift + P
then set Code Climbers: Status Bar Coding Activity
to false
.
Extension settings are stored in the INI file at $HOME/.wakatime.cfg
.
More information can be found from wakatime-cli.
If using an online IDE like gitpods, add your [api key][api key] to global ENV key CODE_CLIMBERS_API_KEY
.
Notes:
$HOME
defaults to $HOME
- To disable the extension at startup add
disabled=true
to your config, this operation can also be performed by pressing ⌘ + Shift + P
and selecting Code Climbers: Disable
.
Troubleshooting
First, turn on debug mode:
- Press
F1
or ⌘ + Shift + P
- Type
> Code Climbers: Debug
, and press Enter
.
- Select
true
, then press Enter
.
Next, open your Developer Console to view logs and errors:
Help → Toggle Developer Tools
Errors outside the scope of vscode-codeclimbers go to $HOME/.wakatime/wakatime.log
from wakatime-cli.
If your error message contains "won't send heartbeat due to backoff" then delete your ~/.wakatime/wakatime-internal.cfg
file to trigger an API connection so we can see the real error message.
The How to Debug Plugins guide shows how to check when coding activity was last received from your editor using the Plugins Status Page.
For more general troubleshooting info, see the wakatime-cli Troubleshooting Section.
SSH configuration
If you're connected to a remote host using the ssh extension you might want to force WakaTime to run locally instead on the server. This configuration is needed when the server you connect is shared among other people. Please follow this guide.
Uninstalling
Click the Extensions sidebar item in VS Code.
Type code climbers
and hit enter.
Click the settings icon next to Code Climbers, then click Uninstall.
Delete the ~/.wakatime*
files in your home directory, unless you’re still using Code Climbers with another IDE.
Contributing
Pull requests, bug reports, and feature requests are welcome!
Please search existing issues before creating a new one.
To run from source:
git clone git@github.com:CodeClimbersIO/vscode-codeclimbers.git
cd vscode-codeclimbers
npm install
npm run watch
- Install the extension from the marketplace
- Then symlink
~/.vscode/extensions/codeclimbers.vscode-codeclimbers-*/dist/extension.js
to ./dist/extension.js
Or to run the web version from source:
git clone git@github.com:CodeClimbersIO/vscode-codeclimbers.git
cd vscode-codeclimbers
npm install
npm run compile
npm run open-in-browser
- Go to localhost:3000 in your web browser
Many thanks to all contributors!
Made with :heart: by the Code Climbers Team.
Contributing
Pull requests, bug reports, and feature requests are welcome!
Please search existing issues before creating a new one.
Developer Workflow
Local Development
git clone git@github.com:CodeClimbersIO/vscode-codeclimbers.git
cd vscode-codeclimbers
npm install
npm run watch
(This will watch for changes and recompile)
- Press F5 in VS Code to start debugging (This opens a new Extension Development Host window)
- Your changes will be reflected in this window
- You can set breakpoints and debug your code
- The Debug Console will show your console.log outputs
Testing Your Changes
- Run
npm test
to execute the test suite
- For manual testing, use the Extension Development Host window
- Test across different VS Code versions using the "Launch Extension" configurations
Publishing Updates
- Update version in
package.json
- Update CHANGELOG.md with your changes
- Run
vsce package
to create a .vsix file
- Test the .vsix file by installing it locally:
code --install-extension your-extension.vsix
- Publish to marketplace:
- Ensure you have a Personal Access Token from Azure DevOps
vsce login CodeClimbers
vsce publish