# Dart SDK: What’s inside it?

SDK means Software Development Kit. SDK is a package in which various tools are packed to develop software for a particular platform. Every platform’s SDK gives you different tools, libraries, and software that can help you create the software for that platform.

**For example,** Java’s JDK (Java Development Kit) provides you with various tools, libraries, and virtual machines for developing the apps for Java’s Platform. The same Android SDK provides you with various tools and libraries for developing apps in Android.

# **Dart SDK**

![Dart SDK Jay Tillu](https://cdn.hashnode.com/res/hashnode/image/upload/v1688062297179/bf498f1a-21a6-4259-9baf-8abc584afe7f.webp align="center")

The Dart SDK has libraries and tools that you need to develop your apps. This is a general structure of Dart’s SDK folder.

* **lib directory** — Includes Dart Standard Libraries.
    
* **bin directory** — Includes tools that you need to develop apps like dart2js compiler, dartfmt, dartanalyzer, etc.
    
* **include directory** — Contained some necessary header files.
    
* **version file** — This shows the current Dart version that is installed on your system.
    
* **LICENSE file** — Standard SDK license.
    
* **README file** — Shows information about directories and files that are shipped with SDK.
    

# **Dart SDK’s Tools**

Dart SDK contains seven tools that are necessary for developing Dart applications.

1. **DartVM** — The Dart Virtual Machine
    
2. **dart2js** — Dart to JavaScript transpiler (for web use only) (for deployable JavaScript)
    
3. **dartdevc** — Dart to JavaScript transpiler (for web use only) (for testing purposes)
    
4. **dartfmt** — The Dart code formatter
    
5. **dartanalyzer** — Analyze the code for errors and warnings that are specified in the dart language specification. DartPad, code editors, and IDEs such as Android Studio, IntelliJ IDEA, and VS Code use the same analysis engine that dartanalyzer uses.
    
6. **Dartdoc —** The API documentation generator.
    
7. **pub —** The Dart package manager. You can use the `pub` tool to manage Dart packages. *The Flutter SDK has its own commands for managing and updating packages.*
    

# **Release channels and version strings**

**The Dart SDK has two release channels:**

* **Stable channel** — Updated no more frequently than every 6 weeks.
    
* **Dev channel** — Usually updated 1/week.
    

**Stable** channel releases of the Dart SDK have version strings like `1.24.3` and `2.1.0`. They consist of dot-separated integers, with no hyphens or letters.

**Dev** channel releases of the Dart SDK (pre-releases) have additional characters, starting with a hyphen (`-`). For example, Dart 2 pre-releases have version numbers starting with `2.0.0-dev` such as `2.0.0-dev.69.5`.

So that’s all you need to know as a Dart programmer about Dart SDK. Feel free to let me know if I miss something. I’d love to learn that.

Till Then Keep Loving, Keep Coding. Jai Hind, Vande Mataram 🇮🇳

<div data-node-type="callout">
<div data-node-type="callout-emoji">💡</div>
<div data-node-type="callout-text">Subscribe For More Such Content</div>
</div>

### **Learn More about Dart and Flutter**

* [List in Dart](https://jaytillu.com/blogs/list-in-dart)
    
* [Abstract Class and Abstract Method in Dart](https://jaytillu.com/blogs/abstract-classes-and-abstract-methods-in-dart)
    
* [Inheritance in Dart](https://jaytillu.com/blogs/interface-in-dart)
    
* [Constructors in Dart](https://jaytillu.com/blogs/constructors-in-dart)
    
* [Classes and Objects in Dart](https://jaytillu.com/blogs/classes-and-objects-in-dart)
    
* [Arrow Functions in Dart](https://jaytillu.com/blogs/arrow-functions-in-dart)
    
* [User-Defined Functions in Dart](https://jaytillu.com/blogs/user-defined-function-in-dart)
    
* [Functions in Dart](https://jaytillu.com/blogs/functions-in-dart)
    
* [Switch Case in Dart](https://jaytillu.com/blogs/switch-case-in-dart)
    
* [Conditionals in Dart](https://jaytillu.com/blogs/conditionals-in-dart)
    
* [Operators in Dart](https://jaytillu.com/blogs/operators-in-dart)
    
* [Keywords in Dart](https://jaytillu.com/blogs/keywords-in-dart)
    
* [Variables in Dart](https://jaytillu.com/blogs/variables-in-dart)
    
* [Data Types in Dart](https://jaytillu.com/blogs/data-types-in-dart)
    
* [Dart SDK](https://jaytillu.com/blogs/dart-sdk)
    

### **Follow me for more such content**

* [My Site](https://www.jaytillu.com/)
    
* [My Blogs](https://jaytillu.com/blogs)
    
* [LinkedIn](https://www.linkedin.com/in/jaytillu/)
    
* [Instagram](https://www.instagram.com/jay.tillu/)
    
* [Twitter](https://twitter.com/jay_tillu)
    
* [Stackoverflow](https://stackoverflow.com/users/8509590/jay-tillu)
    
* [Github](https://github.com/Jay-Tillu)
    
* [Dev](https://dev.to/jay_tillu)
    
* [Medium](https://jaytillu.medium.com/)
    
* [My YouTube Channel](https://www.youtube.com/@jay_tillu)
