home.social

#learnjavascript — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #learnjavascript, aggregated by home.social.

  1. #100DaysOfCode

    #Day52 : building a Todo with @sveltejs #Svelte and @vite #vite

    - using bind: to handle user input and dispath the event
    - using props to activate function and change states of the component
    - conditionnaly style with a CSS class activated only when a prop is true

    Source Code : github.com/teotimepacreau/Svel

    #WebDev
    #Frontend
    #LearnWebDev
    #Javascript
    #LearnToCode
    #LearnJavascript
    #JS
    #HTML
    #CSS
    #UI
    #VanillaJS

  2. #100DaysOfCode

    #Day50 : continue Bookshelf project
    - implemented reservation function, clicking on a book card button "reserve", adds the book to the reservation modal `<dialog>`
    - deployed #Fastify #SQLite backend to fly.io @flydotio
    - deployed #Vite frontend @vercel

    bookshelf.teotimepacreau.fr/

    Source Code : github.com/teotimepacreau/book

    @fastify

    #WebDev #Frontend #LearnWebDev #Javascript #LearnToCode #LearnJavascript #JS #HTML #CSS #UI #VanillaJS

  3. #100DaysOfCode

    #Day49 : continue Bookshelf project
    - implemented View Transitions API fade animation when changing page
    - implemented Scroll-Progress-Timeline to animate with CSS only the elements entry on scroll using `animation: book-entry linear forwards; animation-timeline: view(); animation-range: entry 0% 35%;`

    Source Code : github.com/teotimepacreau/book

    @fastify
    #WebDev #Frontend #LearnWebDev #Javascript #LearnToCode #LearnJavascript #JS #HTML #CSS #Vite #Fastify #UI #VanillaJS

  4. #100DaysOfCode

    #Day48 : continue Bookshelf project
    - Authorization : only authenticated user that have a session-cookie can add a book to the collection and the SQL DB
    - Adding book to the collection : when addBookForm is received it visually adds, and adds to the DB
    - At reload : it combines "goodreads" & "bookviaform" table

    Source Code : github.com/teotimepacreau/book

    @fastify

    #WebDev #Frontend #LearnWebDev #Javascript #LearnToCode #LearnJavascript #JS #HTML #CSS #Vite #Fastify #UI #VanillaJS

  5. #100DaysOfCode

    #Day47 : continuing Bookshelf project
    - Login function : <dialog> element contains the connexion form. username and password are passed to the backend endpoint "/login"
    - Authentification : Retrieving username and password. Hashing it through bcrypt. Fastify-secure-session plugin adds a session cookie.

    Source Code : github.com/teotimepacreau/book

    @fastify

    #WebDev #frontend #LearnWebDev
    #Javascript #LearnToCode
    #LearnJavascript #JS #HTML #CSS #Vite #Fastify #UI #VanillaJS

  6. #100DaysOfCode

    #Day46 : Bookshelf project

    - backend with #Fastify, querying with #SQL a database of books from my Goodreads account and scrapping books covers
    - frontend with #Vite
    - implemented search and filter function
    - working on an authentification to allow admin to add books to the collection

    Source Code : github.com/teotimepacreau/book

    #WebDev #Frontend #WebDesign #LearnWebDev
    #Javascript #LearnToCode
    #LearnJavascript #JS #IndieWeb #PersonalWeb #Homemade #UI #UserInterface #VanillaJS

  7. #100DaysOfCode : #NodeJS #Express #SQLite #VanillaJS

    #Day44 : V2 of my personal website teotimepacreau.fr/

    Source Code : github.com/teotimepacreau/Pers

    Changes :
    - semantic HTML
    - added mobile hamburger navigation
    - title fonts
    - desktop nav style

    Learned :
    - building hamburger menu
    - CSS position:fixed
    - transitioning on translateX
    - aria-expanded

    #WebDev #Frontend #CSS #WebDesign #LearnWebDev
    #Javascript #LearnToCode
    #LearnJavascript #JS #IndieWeb #PersonalWeb #Homemade #UI #UserInterface

  8. #100DaysOfCode : #NodeJS #Express #SQLite #VanillaJS

    #Day42 : Newsletter Express project

    Source Code : github.com/teotimepacreau/Expr

    Changes :
    - reworked completely all styling to get a handcrafter #Bento UI
    - when unsub, if checks if email is already in the DB, if not it sends an error notif

    Learned :
    -focus-visible
    -SQL conditions
    - adding a js parameter that is added to the SQL selection

    #WebDev #Frontend #CSS #WebDesign #LearnWebDev #Javascript #LearnToCode #LearnJavascript #JS #emailgeeks

  9. #100DaysOfCode : #NodeJS #Express #SQLite #VanillaJS

    #Day41 : Beginned email template in Newsletter Express project

    Source Code : github.com/teotimepacreau/Expr

    Learned :
    -inline styles
    -html tag <style>
    -email HTML current state : can get rid of tables if using divs. Still need to learn more about the support of semantic html elements

    #WebDev #Frontend #CSS #WebDesign #LearnWebDev #Javascript #LearnToCode #LearnJavascript #JS #emailgeeks

  10. #100DaysOfCode : #NodeJS #Express #SQLite #VanillaJS

    #Day40 : Added unsubscription logic and SQL handling in Newsletter Express project

    Source Code : github.com/teotimepacreau/Expr

    Added :
    - Unsubscription logic : Create a route for users to unsubscribe from the newsletter. Update the database accordingly.

    Learned :
    -async await handling of errors in Express, require to try catch and next to a middleware

    #WebDev #Frontend #CSS #WebDesign #LearnWebDev #Javascript #LearnToCode #LearnJavascript #JS

  11. #100DaysOfCode : #NodeJS #Express #SQLite #VanillaJS

    #Day39 : Continuing Newsletter Express project with several UI changes

    Source Code : github.com/teotimepacreau/Expr

    Added :
    - modified homepage
    - unsubscribe page
    - beginned unsub route but i need to add SQL DELETE for the email

    #WebDev #Frontend #CSS #WebDesign #LearnWebDev #Javascript #LearnToCode #LearnJavascript #JS

  12. #100DaysOfCode : #NodeJS #Express #SQLite #VanillaJS

    #Day38 : Newsletter building

    Source Code : github.com/teotimepacreau/Expr

    Learned :
    - intro to Backend : learned basics of NodeJS, Express, SQL
    - Express subscription routes : adding entries from the user to an the db
    - Displaying notif if the entries are correctly added

    Roadmap features :
    - unsub route 🚧
    - newsletter sending each week with cronjobs 🚧

    #WebDev #Frontend #CSS #WebDesign #LearnWebDev #Javascript #LearnToCode #LearnJavascript #JS

  13. #100DaysOfCode : #VanillaJS

    #Day37 : Table with dynamic pagination

    Online demo : teotimepacreau.github.io/Table

    Source Code : github.com/teotimepacreau/Tabl

    Learned :
    - pushing in an array each rows until a number of rowsPerPage with a for(i=0; i<arrayOfRows.length; i=i+rowsPerPage)
    - implemented ViewTransitions API
    - active page styled
    - tried to implement a sorter but non complete

    #WebDev #Frontend #CSS #WebDesign #LearnWebDev #Javascript #LearnToCode #LearnJavascript #JS #ViewTransitionsAPI

  14. #100DaysOfCode : #VanillaJS

    #Day36 : Promises and Async/Await Exercices from #30DaysOfJavascript

    Source Code : github.com/teotimepacreau/Prom

    Learned :
    - Promises are based on `resolve and reject`, if it `resolves` the `.then` executes, if it `rejects` we `.catch` the error
    - `Async/Await` : `async` make the function a promise, two blocks similar as `resolve` and `reject` : `try` and `catch`

    #WebDev #Frontend #WebDesign #LearnWebDev #Javascript #LearnToCode #LearnJavascript #JS

  15. #100DaysOfCode : #VanillaJS

    #Day35 : #JSON Exercices from #30DaysOfJavascript

    Source Code : github.com/teotimepacreau/JSON

    Learning :
    - basic JSON structure : double quotes
    - change JSON to object with JSON.parse(const, (key, value))
    - change something JS in JSON with JSON.stringify(obj, replacer, space)

    #WebDev #Frontend #WebDesign #LearnWebDev #Javascript #LearnToCode #LearnJavascript #JS

  16. #100DaysOfCode : #VanillaJS

    #Day34 : Destructuring & Spreading Exercices from #30DaysOfJavascript

    Source Code : github.com/teotimepacreau/Dest

    Learning :
    - destructuring arrays and objects
    - destructuring in for... of loop
    partial destructuring with , ,
    - structuredClone() to create non superficial copies of objects
    - complex treatments in array nested in object

    #WebDev #Frontend #WebDesign #LearnWebDev #Javascript #LearnToCode #LearnJavascript #JS

  17. #100DaysOfCode : #VanillaJS

    #Day33 :Classes Exercices from #30DaysOfJavascript

    Source Code : github.com/teotimepacreau/Clas

    Learning :
    - class allows to create an object with built in properties
    - class `constructor` is the better way to add properties
    - this
    - class extending to create child objects of the class that herits properties
    - `constructor` and `super` to rewrite or add properties to the child class

    #WebDev #Frontend #WebDesign #LearnWebDev #Javascript #LearnToCode #LearnJavascript #JS

  18. #100DaysOfCode : #VanillaJS

    #Day32 : Sets and Maps Exercices from #30DaysOfJavascript

    Source Code : github.com/teotimepacreau/Sets

    - `Set` to get unique elements from an array
    - `Map` to organize array in objects using as we want keys
    - find unique values in a big array combinating `map` array method, flattening and `Set`

    #WebDev #Frontend #WebDesign #LearnWebDev #Javascript #LearnToCode #LearnJavascript #JS

  19. #100DaysOfCode : #VanillaJS

    #Day31 : Higher Order Functions Exercices from #30DaysOfJavascript

    Source Code : github.com/teotimepacreau/High

    - concatenate strings with reduce
    - some, every array method
    -populating an object : using a combination of storing object, for...of loop, sort, slice, map
    -create object with bracket notation storingObject[key] = value

    #WebDev #Frontend #WebDesign #LearnWebDev #Javascript #LearnToCode #LearnJavascript #JS

  20. #100DaysOfCode : #VanillaJS

    #Day30 : Object Exercices from #30DaysOfJavascript

    Source Code : github.com/teotimepacreau/Obje

    - using for in loops and understanding that it requireds the [index] of the item

    - using .every() array method that return a true or false

    - structuredClone() to deep copy an object

    using Object.keys, Object.values, Object.entries and array destructuring

    .find() array method

    #WebDev #Frontend #WebDesign #LearnWebDev #Javascript #LearnToCode #LearnJavascript #JS

  21. #100DaysOfCode : #VanillaJS

    #Day28 : Array Exercices part III from #30DaysOfJavascript

    Source Code : github.com/teotimepacreau/Arra

    - array destructuring with... in order to use Math.min() and Math.max() (because they only works on numbers and not on an array)
    - reduce in order to calculate a sum of elements necessary to an average
    #WebDev #Frontend #WebDesign #LearnWebDev #Javascript #LearnToCode #CodingDay #FrontendDevelopment #CodingChallenge #LearnCode #WebDevelopment #LearnJavascript #JS