Kris Foster
Kris Foster
  • 117
  • 1 988 696
Bazel & Docker: Using Custom Base Images
In this video we're going to be building docker images using bazel. We'll be using custom base images. These base images can come from a docker registry (e.g. dockerhub) or can be built locally.
Code: github.com/kriscfoster/multi-language-bazel-monorepo
Bazel: bazel.build/
Rules Docker: github.com/bazelbuild/rules_docker
Переглядів: 2 586

Відео

Bazel & Java Tutorial: java_library & java_binary (internal & external dependencies)
Переглядів 4,2 тис.Рік тому
In this video, we're going to be adding a java project to our Multi Language bazel monorepo. We're going to have a java_library target that also uses some external dependencies from maven central & a java_binary target that uses the monorepo java_library. We'll be using the built in java_library & java_binary targets, as-well as rules_jvm_external to pull the dependencies form maven central. Re...
Using Gazelle to Improve Multi-Language Bazel Monorepo
Переглядів 3,7 тис.Рік тому
In this video, we're going to be using some features from Gazelle to improve our multi-language bazel monorepo. We will be using the update-repos support to provide our go dependencies to bazel. We will also be using the gazelle build file generation/formatting support. Repository - github.com/kriscfoster/multi-language-bazel-monorepo Gazelle - github.com/bazelbuild/bazel-gazelle
Bazel Tutorial: How to Build, Run, Test & Query (deps, rdeps, tags)
Переглядів 2,7 тис.Рік тому
In this video, we're going to be going over the bazel fundamentals. We'll be learning how to build, run, test and query for targets in a fun and gamified bazel workspace. This will make it easy to understand how bazel works. We will query for dependencies (deps), reverse dependencies (rdeps) and tags. Bazel: bazel.build/ Bazel Mystery: github.com/salesforce/bazel-mystery
Deploying from a Bazel Monorepo to Heroku
Переглядів 1,3 тис.2 роки тому
In this video, we're going to be deploying bazel binary targets to heroku. Traditionally, these things don't work very well together because of the way heroku detects app types and the way a bazel repository is organized. However, bazoku tries to solve this. We are able to deploy using bazel to heroku from our local machine and from a GitHub workflow. Bazel: bazel.build/ Bazoku: github.com/sale...
Bazel & Docker Tutorial: Building container images with bazel (local & remote registry)
Переглядів 8 тис.2 роки тому
In this video we're going to be building docker images using bazel. We'll be running these container images locally and pushing them to the dockerhub registry. Bazel: bazel.build/ Code: github.com/kriscfoster/multi-language-bazel-monorepo
Bazel & NodeJS Tutorial: library, test & nodejs_binary (internal & external deps)
Переглядів 4,7 тис.2 роки тому
In this video we're going to be creating some nodejs targets with Bazel. Bazel is a build tool that is very popular for use in monorepos. We're going to create a nodejs library. We'll write the library and also write some bazel test targets Then we're going to create a web application & create a nodejs_binary target. The web application will have both third party dependencies (express) & depend...
Bazel & Go Tutorial: Targets with go_library, go_test & go_binary (internal & external deps)
Переглядів 7 тис.2 роки тому
In this video we're going to be creating some go targets with Bazel. Bazel is a build tool that is very popular for use in monorepos. We're going to create a go library that doesn't have any external dependencies. We'll write some tests & create targets using go_library and go_test. Then we're going to create a web application & create a go_binary target. The web application will have both thir...
GitHub Actions/Workflow with Smart Devices (Lightbulb, Google Home, Spotify + Raspberry Pi)
Переглядів 5902 роки тому
Walkthrough of a GitHub workflow that interacts with smart devices. The workflow runs node tests with jest, turns on a green smart lamp (tp-link), plays music on a Google Home speaker with Spotify & takes a photograph with a Raspberry Pi. Code: github.com/kriscfoster/pr-celebration-github-workflow
GitHub Actions for Bazel Monorepo - Building & Testing (CI)
Переглядів 7 тис.2 роки тому
In this video we're going to be adding a GitHub workflow to our bazel monorepo. We will be using an action to setup bazelisk & then we will run bazel build & test in the CI. Bazel: bazel.build/ Code: github.com/kriscfoster/multi-language-bazel-monorepo Setup Bazelisk Action: github.com/marketplace/actions/setup-bazelisk
Bazel Tutorial: Python targets with py_library, py_test & py_binary (internal & external deps)
Переглядів 22 тис.2 роки тому
In this video we're going to be creating some python targets in Bazel. Bazel is a build tool that is very popular for use in monorepos. We're going to create a simple python library without any external dependencies. We'll write some tests & create targets using py_library and py_test. Then we're going to create a flask application & create a py_binary target. The flask application will have th...
Bazel Tutorial: (Part 1) Getting Started, Bazelisk & our First Build Targets
Переглядів 51 тис.2 роки тому
In this video we're going to be creating our first build targets in Bazel. Bazel is a build tool that is very popular for use in monorepos. We're going to start by discussing what bazel is & the motivation for using it. We're then going to install bazelisk & use it to manage our bazel version. Then, we're going to create our first bazel targets using the genrule. Bazel: bazel.build/ Code: githu...
Running NodeJS Tests/CI with GitHub Actions/Workflow
Переглядів 14 тис.2 роки тому
In this video, we're going to be running our NodeJS tests/continuous integration with a GitHub Action/Workflow. We will be using jest as our test runner. GitHub actions is a really nice way to run your continuous integration. It's really easy to run your tests with node/npm and GitHub actions. Code: github.com/kriscfoster/github-workflow-nodejs-tests
TypeScript REST API (Pt 4) Acceptance Testing with Jest & Supertest
Переглядів 9 тис.2 роки тому
In this video we're continuing with our TypeScript REST API. We're going to create some acceptance tests to test our API from end-to-end. We use jest & supertest for the tests. Full Code: github.com/kriscfoster/typescript-postgres-typeorm Code Difference from part 3: github.com/kriscfoster/typescript-postgres-typeorm/compare/acceptance-tests?expand=1 Install NodeJS: nodejs.org/en/ Install Docke...
TypeScript REST API (Pt 3) Request Validation with express-validator
Переглядів 8 тис.2 роки тому
In this video we're continuing with our TypeScript REST API. We're going to improve request validation using express validator (www.npmjs.com/package/express-validator). Full Code: github.com/kriscfoster/typescript-postgres-typeorm Code Difference from part 2: github.com/kriscfoster/typescript-postgres-typeorm/compare/request-validation?expand=1 Install NodeJS: nodejs.org/en/ Install Docker: do...
TypeScript REST API (Pt 2) Error Handling Middleware, API Logging & More
Переглядів 7 тис.2 роки тому
TypeScript REST API (Pt 2) Error Handling Middleware, API Logging & More
TypeScript REST API with NodeJS, Postgres & TypeORM
Переглядів 28 тис.2 роки тому
TypeScript REST API with NodeJS, Postgres & TypeORM
GitHub Copilot vs Leetcode Interview Questions
Переглядів 9522 роки тому
GitHub Copilot vs Leetcode Interview Questions
Kafka Tutorial - Node.js Producer & Consumer
Переглядів 70 тис.3 роки тому
Kafka Tutorial - Node.js Producer & Consumer
TypeScript Dependency Injection using tsyringe
Переглядів 33 тис.3 роки тому
TypeScript Dependency Injection using tsyringe
NodeJS & Express - Google OAuth2 using PassportJS
Переглядів 101 тис.3 роки тому
NodeJS & Express - Google OAuth2 using PassportJS
React Testing Tutorial (Jest + React Testing Library)
Переглядів 250 тис.3 роки тому
React Testing Tutorial (Jest React Testing Library)
Introduction to JavaScript Testing with Jest
Переглядів 1,4 тис.3 роки тому
Introduction to JavaScript Testing with Jest
Pagination & Sorting in REST API using Spring Data JPA
Переглядів 19 тис.3 роки тому
Pagination & Sorting in REST API using Spring Data JPA
Spring Data JPA Relationships Tutorial - ManyToMany, ManyToOne & OneToMany
Переглядів 143 тис.3 роки тому
Spring Data JPA Relationships Tutorial - ManyToMany, ManyToOne & OneToMany
Spring Boot & Thymeleaf Tutorial (+ Bootstrap)
Переглядів 96 тис.3 роки тому
Spring Boot & Thymeleaf Tutorial ( Bootstrap)
Spring Boot App with Docker & Kubernetes Tutorial
Переглядів 13 тис.3 роки тому
Spring Boot App with Docker & Kubernetes Tutorial
Easy JavaScript Game Tutorial
Переглядів 23 тис.3 роки тому
Easy JavaScript Game Tutorial
Spring Boot Testing a REST Controller with Unit, Integration & Acceptance Tests
Переглядів 54 тис.3 роки тому
Spring Boot Testing a REST Controller with Unit, Integration & Acceptance Tests
Spring Boot Unit Testing using Mockito & JUnit
Переглядів 19 тис.3 роки тому
Spring Boot Unit Testing using Mockito & JUnit

КОМЕНТАРІ

  • @Grant094
    @Grant094 День тому

    great tutorial thank you!

  • @Mahir_Ahmad_MHR
    @Mahir_Ahmad_MHR День тому

    SO GOOD ❤

  • @keitheatherly2369
    @keitheatherly2369 6 днів тому

    if you type in "defer" in an external javascript source, ( between the words "script" and "src") that is in between the head tags, you won't have add the javascript source to the bottom of the body. The "defer" word means to run the html page before running the javascript, at least that's what my instructor told me.

  • @PavelReznikov
    @PavelReznikov 10 днів тому

    Great tutorials

  • @firminojoga9655
    @firminojoga9655 13 днів тому

    public class ContactSearch { public static List<Contact> searchForContacts(String lastName, String mailingPostalCode){ List<Contact> contactList = [select ID, Name from Contact where LastName =: lastName and MailingPostalCode =: mailingPostalCode]; return contactList; } }

  • @edisonmondal2798
    @edisonmondal2798 13 днів тому

    You are one of the best Tutor.

  • @oscarbarajas3610
    @oscarbarajas3610 16 днів тому

    Thanks man

  • @yamelamadorfernandez7416
    @yamelamadorfernandez7416 20 днів тому

    Excellent simple debunk of DI even for a beginner like me, awesome!

  • @dadahossam3443
    @dadahossam3443 21 день тому

    Bro u need to stop doing that sound with ur mouth!!!!!!!!!!!

  • @nerozonbolt
    @nerozonbolt 22 дні тому

    Any tips on how to do this using the architecture Route/Controller/Service

  • @solomonrajkumar5537
    @solomonrajkumar5537 23 дні тому

    this is excellent Kris!!! hats off... your so crispy and clean :)

  • @PilipalaOnEarth
    @PilipalaOnEarth 26 днів тому

    Thank you! It's very helpful to me.

  • @mozsty
    @mozsty Місяць тому

    i am not able to import flask. loading the pip_install is not working, it is showing every .bzl need a package, rules_python//python:pip.bzl doesnot have one.

  • @saqibullah7286
    @saqibullah7286 Місяць тому

    Nice explanation much recommended for beginners

  • @wantedlepota9960
    @wantedlepota9960 Місяць тому

    great video mate

  • @flying-musk
    @flying-musk Місяць тому

    12:10 is <strike> tag still used for now?

  • @Daniel__g12
    @Daniel__g12 Місяць тому

    Get the lowdown on future developments in an exclusive interview with Binance's CEO

  • @kodeeater
    @kodeeater Місяць тому

    thankyou

  • @ameybelvalkar8877
    @ameybelvalkar8877 Місяць тому

    Awesome

  • @aadhyareddy1624
    @aadhyareddy1624 Місяць тому

    Best tutorial for Google OAuth2 using PassportJS

  • @10kavi
    @10kavi 2 місяці тому

    This is so good but ... So many errors in latest version .getOne(), save(),find() is not working..

  • @abhinavbabu1237
    @abhinavbabu1237 2 місяці тому

    👌

  • @paritoshpanigrahi007
    @paritoshpanigrahi007 2 місяці тому

    I used your code, but did not get refresh token, I tried option access_type: 'offline', but still it is not giving refresh token. Could you please tell me how can I get the refresh token. It would be helpfull if you could make a video on it. The solution is not present on internet.

  • @Logi-MateenSyed
    @Logi-MateenSyed 2 місяці тому

    I wounder why we always need th: isnt it should be tr: for table row and td: for table data for line 18 and 19 !!!

  • @mingtindu123
    @mingtindu123 2 місяці тому

    Very helpful video it is short and suit ❤❤🎉

  • @reggenius
    @reggenius 2 місяці тому

    Honestly, this video took the core of dependency injection using tsyringe and decoupled it in approximately 7 minutes. Nice one Kris Foster, it's hard to find conciseness merged with in-depth these days.

  • @shankarraj3433
    @shankarraj3433 3 місяці тому

    Thanks Kris for this Spring Boot with Thymeleaf Example.

  • @UtkarshSingh_gt7
    @UtkarshSingh_gt7 3 місяці тому

    Thanks man

  • @g2svnit
    @g2svnit 3 місяці тому

    Detailed, clear and concise tutorial, hard to find such straightforward learning.

  • @sreekumarmenon
    @sreekumarmenon 3 місяці тому

    Thanks Kris for creating this project! its a fun and easy way to understand the bazel commands !

  • @sreekumarmenon
    @sreekumarmenon 3 місяці тому

    who ever is watching in 2024 should look at the repo, js code is better in there! (with js_lib ,js_binary,and jest etc)

  • @oakinola
    @oakinola 3 місяці тому

    Amazing video!! Thank you so much...clearly explains the difference between all 3 tests.

  • @KosPepeHands
    @KosPepeHands 3 місяці тому

    Needed a reminder for a quick project, simple and straight to the point. You saved me two hours.

  • @BarbarosYurttagul
    @BarbarosYurttagul 3 місяці тому

    Hi Kris, thanks for the video. 21:26 How did you manage to reduce the test execution speed from 2+ seconds to 0.666 seconds? I did the same steps but mine didn't change.

  • @andrejkling3886
    @andrejkling3886 4 місяці тому

    Cool set up… can you show some real project with same configurations for project?

  • @Luke_uppx
    @Luke_uppx 4 місяці тому

    Can u explain how to use this DI in React Component?

  • @frankrichardsomething
    @frankrichardsomething 4 місяці тому

    About 4 yrs ago I had to build images with bazel because bazel became the enforced standard build system company wide Wish I had these explanations back then, good stuff

  • @immensives147
    @immensives147 4 місяці тому

    Other than him, no one was helpful to me for this particular problem, Thanks Man 👍

  • @osamaayub405
    @osamaayub405 4 місяці тому

    Cannot GET /auth/google/callback getting this error

  • @parindyapigera1790
    @parindyapigera1790 4 місяці тому

    Why is that the Dinosaur's legs aren't moving?

  • @setoelkahfi
    @setoelkahfi 4 місяці тому

    This is really useful

  • @mikebrown5142
    @mikebrown5142 4 місяці тому

    really good, simple tutorial. God bless! if you get the chance - read Matthew 16:28

  • @RahulJhaJourney
    @RahulJhaJourney 5 місяців тому

    data still coming I have done this part docker compose down and again I restart the docker compose up -d but data is still coming and I also remove the data

  • @naderhany3639
    @naderhany3639 5 місяців тому

    man you are awesome

  • @andersonsimeon4172
    @andersonsimeon4172 5 місяців тому

    For a 3 years ago video, this is high quality staright to the point content. Thanks Man

  • @JaiKumar-jh7hl
    @JaiKumar-jh7hl 5 місяців тому

    Bad

  •  5 місяців тому

    awesome content , thank you very much your time.

  • @madeby-jugnu
    @madeby-jugnu 5 місяців тому

    getting error while installing rdkafka 😢 anyone help please

  • @AlassaneMbengue-zy3mn
    @AlassaneMbengue-zy3mn 5 місяців тому

    Very helpful tutorial

  • @Aryxst
    @Aryxst 5 місяців тому

    God bless you!