Enea Xharja
Software EngineerBlog
Thoughts on software, design, and other tidbits.
Arrow Functions in JavaScript
Arrow functions are a new way of writing functions in JavaScript. They are more concise and easier to read than traditional function expressions and make the `this` keyword easier to handle.
Template Literals in JavaScript
Create more readable and concise strings in JavaScript with template literals.
Computed Property Names in JavaScript
Computed property names allow you to create object properties with dynamic keys in ES6. Instead of specifying a fixed key name, an expression can be used to compute the property name at runtime.
Shorthand Properties and Methods in JavaScript
Shorthand properties and methods are a feature introduced in ECMAScript 2015 (ES6) that provides a more concise syntax for defining object literals in JavaScript.
Destructuring in JavaScript
Destructuring is a powerful feature introduced in ECMAScript 2015 (ES6) that allows data to be extracted from arrays and objects and assigned to variables in a more concise and readable way.
Variable Declarations: var, let, const
In JavaScript there are three ways to declare variables: var, let and const. To understand the differences between them, you need to know concepts such as variable declaration and initialization, scope and hoisting.
Git Commands
A list of useful Git commands for everyday use.
Uses
A curated list of my favorite tools and software.
MacBook setup for web development
Setup a MacBook for web development.
Video Games
A curated list of video games that I have enjoyed playing over the years on various gaming platforms.
React Hooks: useEffectEvent
Understand how to use the useEffectEvent hook in React.
React hooks for handling advanced effects
Learn how to handle advanced side effects in React using the useLayoutEffect and useSyncExternalStore hooks.
React Hooks: useMemo and useCallback
Learn how to use the useMemo and useCallback hooks in React.
React Hooks: useReducer
Understand how to use the useReducer hook in React.
React Hooks: useContext
Understand how to use the useContext hook in React.
React Hooks: useRef
Understand how to use the useRef hook in React.
React Hooks: useEffect
Understand how to use the useEffect hook in React.
React Rendering
Understand how React renders components and updates the user interface.
React Hooks: useState
Understand how to use the useState hook in React.
React Events
Understand how event handling works in React.
React Components vs Elements
Understand the difference between React components and elements.
Prototypes in JavaScript
Understand how prototypes work in JavaScript.
Mutation in JavaScript
Understand how mutation works in JavaScript.
Properties in JavaScript
Understand how properties work in JavaScript.
Equality of Values in JavaScript
Understand the equality of values in JavaScript.
Objects and Functions in JavaScript
Understand how objects and functions work in JavaScript.
Primitive Values in JavaScript
Understand the primitive values in JavaScript.
Values and Variables in JavaScript
Understand how values and variables work in JavaScript.
Values in JavaScript
Understand how values work in JavaScript.
Namecheap domain in Vercel
Configure a Namecheap domain in Vercel.
Combine JSX components and MDX documents
Learn how to combine JSX components and MDX documents in Gatsby.
Pure Functions in JavaScript
Understand what it means for a function to be pure in JavaScript.
Understanding the lifecycle of Gatsby
Learn how Gatsby works under the hood.
Border Gradient
Wrap your text with an animated border.
Animated Gradient
Animate your gradient color with CSS.
Text Gradient
Add gradient color to your text with CSS.
How to Get the Current Page URL in Gatsby
Learn how to get the current page URL in Gatsby.
Smooth Scrolling in Gatsby
Implement smooth scrolling in Gatsby using the smooth-scroll package.
Using Google Fonts in Gatsby
Add beautiful fonts to your Gatsby project using Google Fonts.
How to add custom JavaScript to a Gatsby site
Learn how to add custom JavaScript to a Gatsby site without using any plugin.
How to use Tailwind CSS with styled-components
Combine Tailwind CSS with styled-components in React.
Add a Published Filter To Your Gatsby MDX Posts
Add a `published` filter to your Gatsby MDX posts to keep your draft posts hidden until they are ready to be shared with the world.
Add Tags & Categories to Gatsby MDX blog
Learn how to add tags and categories to your Gatsby MDX blog posts.
Medium zoom-effect in Gatsby
Add a zoom effect to your images in Gatsby using the react-medium-image-zoom package.
Add an RSS Feed to your Gatsby MDX blog
Learn how to add an RSS Feed to your Gatsby MDX blog.
Convert an existing Gatsby Markdown blog to use MDX
Learn how to convert an existing Gatsby Markdown blog to use MDX.
Scroll to Hash in Gatsby
Scroll to a specific element on a Gatsby page.
Format Reading Time with JavaScript
Display cups of coffee as indicators of the minutes it takes to read the post.
My Eslint and Prettier Config
Setup Eslint and Prettier with VS Code.
Remove Line Breaks with Javascript
Remove line breaks from a string using plain JavaScript code.
Strict Mode in JavaScript
Understand the importance of strict mode in JavaScript.
How to Hide The Address Bar in a PWA
Learn how to hide the address bar in a Progressive Web Application.
The script tag
Learn how to add JavaScript code to an HTML page using the script tag.
Command-click or Control+click not working
Fix the issue when the user tries to open a link in a new tab by using Cmd+click or Ctrl+click.
A brief history of JavaScript
A brief history of JavaScript, the programming language that powers the web.
It's all about the fundamentals
Learning the fundamentals of JavaScript.
Jamstack Best Practices
Best practices for building Jamstack projects.
What is Jamstack
Understand the Jamstack architecture and its benefits.
About this site
Welcome to my own little corner of the web!