End-to-End TypeScript: Database, Backend, API, and Frontend

preview_player
Показать описание
This is a walk-through of a real commercial system written in TypeScript. Static types are used to ensure that the backend code uses the database's data correctly, that the backend sends the correct data over the API, and that the frontend consumes API data correctly.

Рекомендации по теме
Комментарии
Автор

Great format, Gary! Here's to hoping this channel will become a thing !

mikkelmalmberg
Автор

Watching you navigate around your codebase using Vim is what I've always wanted to be as a programmer. Might have to pick up Vim...

sesgoe
Автор

Watching this made me miss the old destroy all software screencasts. Thanks so much for making this!

roberthuberdeau
Автор

Funny to see only your hard gestures as you're speaking. Great video, as always! Your blog posts inspired me to use io-ts in a project at work.

seanyohara
Автор

Made me miss Destroy All Software even more!

warmupz
Автор

Finally it is here. Thanks for these videos. Also, like this format. I think DAS videos takes more time, takes to make, so hoping these videos keep on coming.

vinitkumar
Автор

You have accurately captured what makes things like typescript great

michaelr
Автор

cool way of presenting, explaining this - and the voice is conducive for learning - it reminds me of Sam Harris, great content!

ricp
Автор

Great demo! Would love to see more typescript examples in "real" applications :)

viktormalmedal
Автор

Thanks Gary for such an awesome video!

yowchun
Автор

Great format, amazing content, as always!

xakonable
Автор

You have a YouTube channel? :O Instant subscribe.

ChristopherOkhravi
Автор

Nice. Typescript used to become the opposite of loosey-goosey JS.

finnwillows
Автор

Wouldn't you have your dotfiles for nvim available by any chance?

eekeelt
Автор

Here to watch you become a youtube GOD.

MichaelMerritt
Автор

How would you roll this out to production?
You need to be able to keep everything still running while you are deploying. The client does not share the type definitions but when a running client gets a number instead of a boolean from the API it'll potentially break.

nokalko
Автор

What if you do progressive rollout? Now you've coupled your database to your API and to your client. You can't have two versions of your app running concurrently. If you have a mobile app, you need to forcefully deprecate older versions since they rely on an API that doesn't exist anymore.

I love the idea here, but I do feel that you'd benefit from a bit more abstraction between the database and the core logic, between the core logic and the API (and versioned APIs).

This might be completely overkill, depending on your needs, but there's definite downsides to have a database column type change propagate all the way to the client.

guillaume_simard
Автор

Do you normally not use line numbers or it that for presenting?

dpassen
Автор

Can someone who knows vim (I’m still a newb) tell me how he searches for files and opens them right away? His workflow looks really cool.

dim-d
Автор

Is it a monorepo with frontend and backend in the same repo? If so, what would be a good approach to use shared types between different repositories (front and backend in separate repos)?

imtk