Notice: Before you jump in and start reading, it's important to understand that this is not a tutorial you'd read while sitting in public transportation or on your toilet seat. You...
![Seif Ghezala's photo](https://cdn.sanity.io/images/o5kh1pex/production/d4f5b29e70b72e45ff9fef7c8e6f113b0eb47d74-800x817.jpg?rect=0,9,800,800&w=55&h=55&fit=max&auto=format)
Seif Ghezala2019-09-01 · 10 min
What is ESLint and why is it useful?
A solution is useless if it doesn't solve a problem. So let's start with the problems we have when writing JavaScript code.
Problem #1: JavaScript...
![Seif Ghezala's photo](https://cdn.sanity.io/images/o5kh1pex/production/d4f5b29e70b72e45ff9fef7c8e6f113b0eb47d74-800x817.jpg?rect=0,9,800,800&w=55&h=55&fit=max&auto=format)
Seif Ghezala2019-08-01 · 6 min
A SplitPane is a collection of 2 elements whose heights can be changed by dragging a line that separates them. Based on its layout, a SplitPane can be horizontal or vertical. If you've...
![Seif Ghezala's photo](https://cdn.sanity.io/images/o5kh1pex/production/d4f5b29e70b72e45ff9fef7c8e6f113b0eb47d74-800x817.jpg?rect=0,9,800,800&w=55&h=55&fit=max&auto=format)
Seif Ghezala2019-07-01 · 8 min
This is the last article of the series. We've built a few things with ReasonReact and now it's time to share my opinion about using Reason to create React applications.
Access Part...
![Seif Ghezala's photo](https://cdn.sanity.io/images/o5kh1pex/production/d4f5b29e70b72e45ff9fef7c8e6f113b0eb47d74-800x817.jpg?rect=0,9,800,800&w=55&h=55&fit=max&auto=format)
Seif Ghezala2019-06-01 · 8 min
A while ago I published this article about building an accessible and reusable modal/dialog component in React.
The component achieves the following requirements:
A reusable component...
![Seif Ghezala's photo](https://cdn.sanity.io/images/o5kh1pex/production/d4f5b29e70b72e45ff9fef7c8e6f113b0eb47d74-800x817.jpg?rect=0,9,800,800&w=55&h=55&fit=max&auto=format)
Seif Ghezala2019-05-11 · 9 min
I like to go to the Roadmap of ReasonML from time to time to get excited about what's getting cooked. Whenever I visit the page, I can't help but notice these 2 points:
So the official...
![Seif Ghezala's photo](https://cdn.sanity.io/images/o5kh1pex/production/d4f5b29e70b72e45ff9fef7c8e6f113b0eb47d74-800x817.jpg?rect=0,9,800,800&w=55&h=55&fit=max&auto=format)
Seif Ghezala2019-05-03 · 10 min
ReasonML is a functional programming language with smartly inferred strict types, that compiles to JavaScript. ReasonReact is Reason bindings for ReactJS (aka the translated ReasonML...
![Seif Ghezala's photo](https://cdn.sanity.io/images/o5kh1pex/production/d4f5b29e70b72e45ff9fef7c8e6f113b0eb47d74-800x817.jpg?rect=0,9,800,800&w=55&h=55&fit=max&auto=format)
Seif Ghezala2019-04-19 · 10 min
A modal dialog is a window overlaid on top of the main application. It’s an inert window where the user can’t interact with the rest of the application.
Creating a modal in React is...
![Seif Ghezala's photo](https://cdn.sanity.io/images/o5kh1pex/production/d4f5b29e70b72e45ff9fef7c8e6f113b0eb47d74-800x817.jpg?rect=0,9,800,800&w=55&h=55&fit=max&auto=format)
Seif Ghezala2019-04-01 · 7 min