Back Introducing Chimtu cover pic

Introducing Chimtu

2 min read
# Chimtu
Pavan profile-pic

Pavan

Hello there👋, very happy to see you guys here. Today, I’d like to introduce my assistant, Chimtu. He’s here to help you understand things better and, of course, crack some jokes 💯

Chimtu profile-pic

Chimtu

This stupid bought me to 🌐IT world, I’m mostly here to have fun and make things crystal clear for you 🤯

Chimtu profile-pic

Chimtu

So what topic are you going to explain today, anything except your endless tales about Biryani!

Pavan profile-pic

Pavan

Chimtu it’s your first day of duty, i don’t want you get bored. Let me show you something cool I picked up from YouTube reels. Have you ever wondered what these ~ and ^ symbols in package.json mean?

// ~ & ^ symbols in front of packages
{
  "@tanstack/react-query": "^5.59.16",
  "drizzle-orm": "~0.35.3"
}
Chimtu profile-pic

Chimtu

I’ve seen them a lot, but honestly, I have no clue 🤷‍♂️

Pavan profile-pic

Pavan

I’ll explain👇

  • Packages with the ^ symbol allow minor version upgrades, for example: 5.59.16 → 5.60.0
  • Packages with the ~ symbol allow patch version upgrades, for example: 0.35.3 → 0.35.4
// ~ & ^ symbols in front of package.json
{
"@tanstack/react-query": "^5.59.16",
"drizzle-orm": "~0.35.3"
}
Chimtu profile-pic

Chimtu

Cool, but where can I see the exact package version that was downloaded?

Pavan profile-pic

Pavan

You can find the exact version in your package-lock.json or pnpm-lock.yaml file. Here’s an example:

drizzle-orm:
  specifier: ^0.35.3
  version: 0.35.3(@libsql/client-wasm@0.14.0)(@neondatabase/serverless@0.10.1)(@types/pg@8.11.6)(@types/react@18.3.12)(react@18.3.1)
Chimtu profile-pic

Chimtu

Got it! But what if I want to install an exact package version like 0.35.3? Should I just remove the ~ and ^ symbols?

Pavan profile-pic

Pavan

Nice👍, that’s it. You’re getting a hang of it!
Chimtu profile-pic

Chimtu

I’m fast as f**k boi, Anyways thanks for making it till here! see you in next blog!

Pavan profile-pic

Pavan

Hey, that’s my line! Anyway, see you in the next blog ✌️. Peace out!