Deno; JavaScript ve TypeScript uygulamalarını çalıştırmak için geliştirilen açık kaynaklı ve çok platformlu bir çalışma zamanı ortamıdır. Web standartlarına yakın API yapısı ve yerleşik geliştirme araçlarıyla Node.js'e alternatif modern bir JavaScript ortamı sunar.
TypeScript kodları ek bir derleme yapılandırmasına ihtiyaç duyulmadan doğrudan çalıştırılabilir. JavaScript, JSX, TypeScript ve TSX dosyaları aynı çalışma ortamı içerisinde kullanılabilir.
Yerleşik paket yöneticisi sayesinde npm paketlarıyla çalışabilir ve mevcut Node.js projelerindeki birçok bağımlılıktan yararlanabilir. package.json, node_modules ve npm workspaces gibi yaygın Node.js proje yapılarıyla uyumluluk sağlar.
Kod biçimlendirme, lint, test, benchmark, dokümantasyon oluşturma ve bağımlılık yönetimi gibi geliştirme araçları doğrudan Deno içerisinde bulunur. Böylece birçok proje için ayrı araçların kurulmasına duyulan ihtiyaç azaltılabilir.
İzin sistemi sayesinde uygulamaların dosya sistemi, ağ, ortam değişkenleri ve işletim sistemi kaynaklarına erişimi sınırlandırılabilir. Bu yapı bilinmeyen veya üçüncü taraf kodların kontrollü bir ortamda çalıştırılmasına yardımcı olur.
Tek bir çalıştırılabilir dosyadan bağımsız uygulama oluşturma, görev çalıştırma, workspace yönetimi ve web uygulamalarına yönelik geliştirme özellikleri de bulunur.
Windows, Linux ve macOS sistemlerini destekler.
TypeScript kodları ek bir derleme yapılandırmasına ihtiyaç duyulmadan doğrudan çalıştırılabilir. JavaScript, JSX, TypeScript ve TSX dosyaları aynı çalışma ortamı içerisinde kullanılabilir.
Yerleşik paket yöneticisi sayesinde npm paketlarıyla çalışabilir ve mevcut Node.js projelerindeki birçok bağımlılıktan yararlanabilir. package.json, node_modules ve npm workspaces gibi yaygın Node.js proje yapılarıyla uyumluluk sağlar.
Kod biçimlendirme, lint, test, benchmark, dokümantasyon oluşturma ve bağımlılık yönetimi gibi geliştirme araçları doğrudan Deno içerisinde bulunur. Böylece birçok proje için ayrı araçların kurulmasına duyulan ihtiyaç azaltılabilir.
İzin sistemi sayesinde uygulamaların dosya sistemi, ağ, ortam değişkenleri ve işletim sistemi kaynaklarına erişimi sınırlandırılabilir. Bu yapı bilinmeyen veya üçüncü taraf kodların kontrollü bir ortamda çalıştırılmasına yardımcı olur.
Tek bir çalıştırılabilir dosyadan bağımsız uygulama oluşturma, görev çalıştırma, workspace yönetimi ve web uygulamalarına yönelik geliştirme özellikleri de bulunur.
Windows, Linux ve macOS sistemlerini destekler.