TLWI TypeScript
thelastweekin.dev
Hello there tech enthusiasts,
What a wonderful week we've had! A profusion of knowledge to share, trails to blaze and of course, ample opportunities to code 'till dawn. We're back with all things fun and familiar, if you're as hooked on TypeScript as we are, this is your hub! Beaming directly onto your screens, here's our round-up for the week!
If you've been eagerly awaiting the prized "Total TypeScript" book, hold onto your seats because we have a treat just for you. Check out the companion repo to whet your appetite and dive headfirst into your TypeScript journey.
Next up, we're super thrilled to introduce Lobe Chat
We've got some hot-off-the-press TypeScript news as well. We're beyond excited to announce the release candidate for [TypeScript 5.4](https://devblogs.microsoft.com/typescript/announcing-typescript-5-4-rc/
Have a heart for Discord bots? Well, here's something to bolster your love! Go on and learn how to create a dynamic AI Discord bot
And last but definitely not the least, in our ongoing quest to simplify web designing, we're doling out a guide on creating a Blog web app using Adonis.js 6
Keep coding, keep shining, and remember, the sky's your limit!
Stay curious, The TypeScript Newsletter Team
Dennis
Updates From The TypeScript Blog
- Announcing TypeScript 5.4 RC
- February 22, 2024
Our Article Picks
- PRINCE KUKREJA: Don't be AFRAID of Typescript!
- Andrew Zachary: Create a Blog web app using Adonis.js 6
- Alecell: Vue Primeiras Impressões
- Mattiz: Mock modules properly with Jest and Typescript
- Jeongho Nam: TypeScript Swagger Editor - alternative of MSW and Swagger-UI
- abdalshafiealmajdoup: Prisma vs Sequelize: A Comprehensive Comparison of Node.js ORMs
- Megan Lee: How to build a component library with React and TypeScript
- Omari: Are TypeScript enums Still Bad?
- Michael Andreuzza: How to create animated image cards with Tailwind CSS and Astrojs
- clxrity: How to create a dynamic AI Discord bot with TypeScript
- Katie Liu: ChatCraft week 7: New issue, new provider?
- Otavio Monteagudo: A Non-noob Javascript Glossary for 2024, with Examples
- Gergely Szerovay: How to mock NgRx Signal Stores for unit tests and Storybook Play interaction tests (both manually and automatically)
- Francisco Luna 🌙: Creating Dynamic Forms with React, Typescript, React Hook Form and Zod
- Nikolas ⚡️: CommonJS vs ES Modules: the shift from require to import
- Eelco Wiersma: Building a multi-tenant B2B SaaS with Vite and Tanstack Router & Query - Part 1: The boilerplate
- jericirenej: Chaining callbacks in TypeScript using the monad design pattern
- Andreas Riedmüller: AutoLink: Simplifying Conditional Navigation in React Router Projects
- Geoffrey Kim: Resolving Yarn Install and TypeScript Issues in a NestJS Project
- Alex K.: TypeScript Template Literal Types: Practical Use-Cases for Improved Code Quality
- Michael Otu: Introduction to Back-end
- Pedro Bruneli: How to cache requests in Angular
- Nagendra Dhanakeerthi: Why I Decided to Build Multiwoven: an Open-source Reverse ETL
- WangGithub0: Try to run python in a Pure Browser-Based Web App running on Cloudflare
- Vitor Rios: Testando Componentes React com MobX Stores: Um Guia Prático com Exemplos
- Eda: LeetCode Meditations: Two Sum
- Eda: LeetCode Meditations: Group Anagrams
- Dayvster 🌊: Why I love Jotai
- Alexey Solovyov: Treat your frontend like a server application with Rattus ORM
- Eda: LeetCode Meditations: Valid Anagram
- Steve Lebleu: Email sending in Node.js
- Virgile RIETSCH: Développe et valide un formulaire avec Remix
- Marcin Żmudka: Do not use boolean flags for your react state
- Matteo: Building a dynamic form with Svelte and Typescript
- KayStar NJ4: Angular 17 with clean architecture - Error: Dependency Injection
- Muhammad Younus Raza: Typescript Generics Explained
- Dayvster 🌊: react useDebounce
- Eda: LeetCode Meditations: Top K Frequent Elements
- Akshat Mittal: Implementing Sign In with Google in NodeJS (without third-party libraries)
- Shailen Naidoo: @ts-ignore is a symptom of a code smell
- Yarden Porat: TypeScript's noUncheckedIndexedAccess
- Ethern Myth: Use Dynamic Hook
- Aakash Singh: Answer to my recent question
Our Repo Picks
- lobehub/lobe-chat (TypeScript): 🤯 Lobe Chat - an open-source, modern-design ChatGPT/LLMs UI/Framework. Supports speech-synthesis, multi-modal, and extensible plugin system. One-click FREE deployment of your private ChatGPT/Gemini/Ollama chat application.
- reorproject/reor (TypeScript): AI note-taking app that runs models locally.
- FlowiseAI/Flowise (TypeScript): Drag & drop UI to build your customized LLM flow
- ChatGPTNextWeb/ChatGPT-Next-Web (TypeScript): A cross-platform ChatGPT/Gemini UI (Web / PWA / Linux / Win / MacOS). 一键拥有你自己的跨平台 ChatGPT/Gemini 应用。
- panaverse/learn-typescript (TypeScript): Learning TypeScript in Baby Steps
- openai-translator/openai-translator (TypeScript): 基于 ChatGPT API 的划词翻译浏览器插件和跨平台桌面端应用 - Browser extension and cross-platform desktop application for translation based on ChatGPT API.
- observablehq/framework (TypeScript): A static site generator for data apps, dashboards, reports, and more. Observable Framework combines JavaScript on the front-end for interactive graphics with any language on the back-end for data analysis.
- bclswl0827/ChatGemini (TypeScript): ✨ ChatGemini 是一个基于 Google Gemini 的网页客户端,对标 ChatGPT 3.5,操作逻辑同 ChatGPT 3.5 一致,同时支持在聊天中上传图片,应用会自动调用 Gemini-Pro-Vision 模型进行识图。
- subsquid-quests/algebra-subgraph-migration (TypeScript): Stellaswap-sponsored quest to migrate the Algebra subgraph to Subsquid
- prisma/prisma (TypeScript): Next-generation ORM for Node.js & TypeScript | PostgreSQL, MySQL, MariaDB, SQL Server, SQLite, MongoDB and CockroachDB
- Nutlope/notesGPT (TypeScript): Record voice notes & transcribe, summarize, and get tasks
- vuejs/core (TypeScript): 🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
- Lissy93/personal-security-checklist (TypeScript): 🔒 A compiled checklist of 300+ tips for protecting digital security and privacy in 2024
- QuivrHQ/quivr (TypeScript): Your GenAI Second Brain 🧠 A personal productivity assistant (RAG) ⚡️🤖 Chat with your docs (PDF, CSV, ...) & apps using Langchain, GPT 3.5 / 4 turbo, Private, Anthropic, VertexAI, Ollama, LLMs, that you can share with users ! Local & Private alternative to OpenAI GPTs & ChatGPT powered by retrieval-augmented generation.
- FuelLabs/sway-farm (TypeScript): Farm 🍅 on the Fuel network.
- element-plus/element-plus (TypeScript): 🎉 A Vue.js 3 UI Library made by Element team
- dream-num/univer (TypeScript): Univer is a set of enterprise document and data collaboration solutions.
- total-typescript/total-typescript-book (TypeScript): The companion repo for the upcoming Total TypeScript book
- umijs/umi (TypeScript): A framework in react community ✨
- siyuan-note/siyuan (TypeScript): A privacy-first, self-hosted, fully open source personal knowledge management software, written in typescript and golang.
- BabylonJS/Babylon.js (TypeScript): Babylon.js is a powerful, beautiful, simple, and open game and rendering engine packed into a friendly JavaScript framework.
- thecodingmachine/react-native-boilerplate (TypeScript): A React Native template for building solid applications 🐙, using JavaScript 💛 or Typescript 💙 (you choose).
- Infisical/infisical (TypeScript): ♾ Infisical is the open-source secret management platform: Sync secrets across your team/infrastructure and prevent secret leaks.
- misskey-dev/misskey (TypeScript): 🌎 An interplanetary microblogging platform 🚀
- CopilotKit/CopilotKit (TypeScript): AI Copilot infrastructure for React apps 🤖 AI-powered Textareas, in-app AI chatbots (with context-awareness & actions), LangChain support, and more!
The Last Week In TypeScript is a weekly roundup for all things Typescript! Follow me on Twitter for more projects @dennisokeeffe92
Subscribe to my personal newsletter to get updates on TheLastWeekIn.Dev + more! 🦄