United Kingdom
Showing:

Openbase Activity

Joined Feb 2021
No Packages Rated
No feedback provided

GitHub Activity

Joined Aug 2014
1
Followers
2
Following
16
Repositories
0
Gists
0
Pull Requests
2
Issues
1
Starred
14
Watched
Matthew Smithson upvoted a review by Vasily Shelkov
8mos ago
ag-grid-reactThe best JavaScript Data Table for building Enterprise Applications. Supports React / Angular / Vue / Plain JavaScript.
Great Documentation
Easy to Use
Highly Customizable
Performant

This is always my go to when adding a table into complex data sets. I've used this in a property management platform which had to support a number of workflows and processes. This was perfect in terms of performance because it virtualises your table for that smashing performance. Eventually our table dataset became too large to deal with just on the client side and fortunately the library does a good job providing documentation and a way of integrating with your server side data. The only downside (which is understandable) is to have so many features packed into one package: it's monetised by having an enterprise edition. It didn't put us off and was well worth the money but it's definitely important to know. The documentation clearly sign posts which features are enterprise and which are free via the community edition so make sure to do your research if it'll meet your needs first.


2
Matthew Smithson upvoted a review by Vasily Shelkov
8mos ago
swrReact Hooks for data fetching
Great Documentation
Easy to Use
Bleeding Edge

This strongly typed library came along around the time that hooks were becoming less experimental in React. It feels very intuitive and makes interacting with your apis really a breeze to reflect the ever so standard states of the responses you can get. It's doing for Rest APIs what apollo client has done for development with graphql apis. It makes you think about errors as part of the api which is invaluable. In fact it also can be used with graphql which was great for us because it allowed us to interact with some legacy rest APIs as well as our graphql api. That's where it ends for me though, if you want a more complex caching system and to optimise your interaction with your apis in the client then great. Unfortunately in our case, we didn't really need that and so it was more sophisticated than our needs which made it feel a bit wasted for us. Still there's no doubt in the quality of the library!


2
Matthew Smithson upvoted a review by Vasily Shelkov
8mos ago
prettierPrettier is an opinionated code formatter.
Great Documentation
Easy to Use
Performant

You want to have a project which looks like they've all been written by one developer. Search no further for your javascript project. Best of all, it is as simple as running a command and is as good as instant so doesn't slow down your development. Write how you want, commit into one style and stop discussing how to write your code. The out of the box settings are perfect as they are but has some customisation to keep you happy in case it's a bit too jarring to see the code you didn't right. I promise you'll get used to it and focus on what's really important: building great features with great people :D


2
Matthew Smithson upvoted a review by Vasily Shelkov
8mos ago
svelteCybernetically enhanced web apps
Great Documentation
Easy to Use
Bleeding Edge

There's a lot of hype around Svelte and can definitely see why. It's got a great developer experience and you're able to get an app up and running so fast ! I built with Svelte as an experiment at work by comparing it with our typical setup for our apps using create-react-app. Our conclusion is that overall, it's more a less similar experience building with React which is a + because it felt like a reasonably low learning curve BUT as soon as we started doing something a bit more complex, that's where we started stumbling a bit and having to look for community help. It wasn't quite as flexible. In the end, we'd be moving away from what we as a group of developers knew very very well for what is shouted about as a performance benefit. I was a little disappointed to find that there was still Svelte code required to run, it didn't compile down to pure pure JS as the documentation promises. Still, to be taking the community by storm and creating competition is very healthy and I'm sure there'll be exchange of ideas between the libraries that can help innovation


2
Matthew Smithson upvoted a review by Vasily Shelkov
8mos ago
@testing-library/react🐐 Simple and complete React DOM testing utilities that encourage good testing practices.
Great Documentation
Easy to Use
Responsive Maintainers

This library without a doubt encourages really great testing practices. It also has been built with the foundation of javascript meaning it has wrappers for all sorts of frontend technologies (Vue, Cypress, Svelte) and all using the same APIs. Learn once, use everywhere. So why does it encourage good testing practices ? 1. It's abstracted from react rendering. When you're asserting against react testing library, it gives you what the browser gives you. DOM elements which also teaches you how to use browser developer tools. No testing implementation details which stops you from having false-positive tests because you've implemented correctly but it doesn't actually work and false negatives where you've changed your code then your tests start failing because it's too tightly coupled to your tests. 2. The way you select elements via the api encourages you to test via what your users see. This means nothing specific to your framework and also discourages you to test by what you use for your styling! Sometimes it might be hard to find your thing you're asserting, byText or byRole, then you can always use good old document.querySelector :) I haven't been blocked from using any other libraries like fetch-mock and even has useful async utility functions which waits for your UI to change as well. There is some room for improvement though with the assertion messages. Quite often because you're rendering large parts of your app (if not your whole app!) then the output diff of not finding an element or otherwise requires you to debut and print.


2
Matthew Smithson upvoted a review by Vasily Shelkov
8mos ago
redux-formA Higher Order Component using react-redux to keep form state in a Redux store
Slow
Hard to Use
Great Documentation

Forms are just not meant to exist within Redux. They have no business being a part of global state. It makes for more complex code than is required. There are plenty of form competitors out there that are compatible with React and I would recommend over this. Saying that, if you have an app which is completely bought into react and you're just looking for something to fit into your existing eco system that will reap the benefits of anything you've built on top of redux than this is the strongest contender that I know of. The documentation and development of this library made it what used to be the go to choice even for applications that didn't have redux in the past.


2
Matthew Smithson upvoted a review by Vasily Shelkov
8mos ago
react-modalAccessible modal dialog component for React
Great Documentation
Easy to Use

No thrills, simple to use out of the box library for a modal. Want to style it, go ahead. Want typescript support, it has it. Want to make sure your modal is accessible ? they have documentation to help you.


2
Matthew Smithson upvoted a review by Vasily Shelkov
8mos ago
@lingui/react🌍📖 A readable, automated, and optimized (5 kb) internationalization for JavaScript
Great Documentation
Easy to Use
Bleeding Edge
Responsive Maintainers

Looking for internationalisation in your React app, look no further. This is a great library which has ready made code examples (such as with create-react-app), supports dynamic loading of your translations based on the locale the user is requesting to see and is as simple as wrapping your text in their `<Trans>` component + translating a json file. No messing about with custom message ids and files like you might be used to in other internationalisation libraries. It supports dynamic parts of your copy with placeholders (e.g. {0}) and has pluralisation for different locales built in. For those of you with more complex cases, like I can't use a react component or my translation is based on an api response code, then again, check out their docs for they have in depth examples and explanations of how the recommended way to solve those are. What more could you want ?


2
Matthew Smithson upvoted a review by Vasily Shelkov
8mos ago
react-hook-form📋 React Hooks for forms validation (Web + React Native)
Great Documentation
Easy to Use
Bleeding Edge
Performant

After having used Redux-forms and then Formik moving away from redux. This felt a very natural form library to use. Why did I use it when I was already using a great form library? main reasons: 1. It felt like it was a better level of abstraction which only took responsibility for the form state and behaviour but leaving the markdown alone. 2. It has a smaller package size compared to formik (gotta think about user's download) 3. It's more performant and optimises how often the form re-renders. Then as well as the above, I found that their documentation of typescript types was amazing and definitely a learning for other library documentations!


5
Matthew Smithson upvoted a review by Vasily Shelkov
8mos ago
formikBuild forms in React, without the tears 😭
Great Documentation
Easy to Use
Highly Customizable

I've used this professionally. It's one of the best built form libraries that are not dependant on using specific state management. It has great typescript in built into the library although the typescript documentation could be improved It's is generally very intuitive with a vast api for a lot of customisation as well as hooks to help build your own components with Formik's api.


3