npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

codeshift-learn

v1.0.5

Published

Learn to code. Never leave the terminal.

Readme

CodeShift

Learn to code. Never leave the terminal.

npm version npm downloads Node.js License: MIT

CodeShift is a fully interactive coding education CLI that runs entirely in your terminal — no browser, no account, no installation wizard. Structured lessons, real code execution, spaced repetition, daily challenges, and achievement badges, all from the command line.


Install

npm install -g codeshift-learn

Requirements: Node.js 18+


Quick Start

codeshift start

That's it. Pick a language track and start learning.


What's Inside

🗂️ Language Tracks

| Track | Levels | Lessons | Access | |---|---|---|---| | Python 🐍 | 4 | 64 | Free | | JavaScript 🟡 | 3 | 35 | Free | | More coming | — | — | — |

📚 Lesson Types

| Type | Description | |---|---| | 📖 Read | Concept explanation with syntax-highlighted code | | ✏️ Fill in the Blank | Type the missing keyword or expression | | 🔘 Multiple Choice | Pick from four options | | 💻 Write Code | Write a real solution in your editor — CodeShift runs it against test cases | | 🐛 Fix the Bug | Find and correct broken code | | 🔍 Explain This Code | Read a snippet and predict what it outputs | | 🏗️ Mini Project | End-of-level capstone challenges |

🌍 Real-World Challenges

A separate challenge mode with no hand-holding — just a brief, test cases, and your editor. Current Python challenges:

  • Tip Calculator (beginner)
  • Temperature Converter (beginner)
  • Password Generator (intermediate)
  • Grade Calculator (intermediate)
  • Word Frequency Analyzer (intermediate)
  • Caesar Cipher (advanced)

⚡ Learning Features

  • Spaced Repetition — wrong answers resurface every 5 lessons automatically
  • Daily Challenge — one question per day from your completed lessons, earns streak bonus XP
  • Unlimited Attempts — no lockouts; hints appear after the first wrong answer
  • Streak System — daily coding habit tracker with bonus XP
  • XP & Progress — track completion per level, per track, and overall
  • 📋 Cheat Sheet — instant terminal reference card: codeshift cheat python

🏅 Achievement Badges

Earn badges as you hit milestones:

🖥️  Hello World       First lesson complete
⚡  Syntax Learned    Complete Level 1
💾  Committed         10 lessons complete
🚀  Deployed          25 lessons complete
🔧  Debugger          Fix a bug on the first try
🔍  Code Reader       Nail an Explain This Code lesson
🌐  Polyglot          Start a second language track
🔥  Hot Streak        3-day coding streak
⭐  Star Developer    7-day streak
🏆  Elite Coder       30-day streak
💡  Lightbulb         100 XP earned
⚙️  Senior Engineer   500 XP earned
🖤  10x Engineer      1000 XP earned
🌍  Real World Ready  Complete a real-world challenge
☕  Coffee++          Complete a daily challenge
🎯  Sharp             5 correct answers in a row

All Commands

codeshift start              # Launch the app — main menu
codeshift progress           # XP, streaks, and completion stats
codeshift cheat python       # Python quick-reference card
codeshift cheat javascript   # JavaScript quick-reference card
codeshift activate <key>     # Activate a Pro license
codeshift update             # Check for a newer version
codeshift help               # Full command reference
codeshift version            # Print version number

In-App Navigation

| Key | Action | |---|---| | ↑ ↓ | Navigate menus | | Enter | Select / confirm answer | | M + Enter | Exit to main menu from any lesson | | A B C D | Answer multiple choice questions |


Main Menu

◆ CodeShift — Learn to code. Never leave the terminal.

  Continue — Python · Level 2 · Lesson 4
  🌍 Real-World Challenges
  ⚡ Daily Challenge  — bonus XP available!
  🔄 Review Queue  (2 lessons to review)
  📋 Cheat Sheet
  Browse all lessons
  Switch language track
  View my progress & badges
  Settings
  Exit

Progress is Saved Locally

All progress, XP, streaks, and badges are stored on your machine at ~/.config/codeshift/config.json. Nothing is sent to a server. No account required.


Contributing

Contributions are welcome — especially new lessons and language tracks.

Bug reports & feature requests: Open an issue

Discussions & ideas: GitHub Discussions

Adding lessons:

  1. Fork the repo
  2. Add lessons to src/lessons/tracks/<language>/level-0X.json
  3. Follow the schema in src/lessons/schema.ts
  4. Run npm test to validate
  5. Open a pull request

Lesson JSON schema is documented in src/lessons/schema.ts


Roadmap

  • [ ] More language tracks (TypeScript, Rust, Go)
  • [ ] VS Code extension integration
  • [ ] GitHub Actions for auto-publish
  • [ ] Leaderboard between friends (shared key)
  • [ ] Timed challenge mode

License

  • CLI core & free lesson content: MIT License
  • Pro lesson content (if/when added): Proprietary

Copyright © 2024 CodeShift