HN user

skidding

463 karma

twitter.com/skidding

Posts25
Comments79
View on HN
reactcosmos.org 6y ago

Show HN: React Cosmos 5 – A dev tool for building scalable, high-quality UIs

skidding
20pts4
github.com 7y ago

Show HN: Jobs Done – A ritual app for ending the work day inspired by Deep Work

skidding
263pts56
github.com 7y ago

Show HN: Searchable library of React testing examples

skidding
1pts1
react-testing-examples.com 8y ago

Show HN: React Testing Examples

skidding
1pts0
flatris.space 8y ago

Show HN: Flatris – A fast-paced two-player web game

skidding
2pts1
news.ycombinator.com 9y ago

Ask HN: How do you stay creative?

skidding
23pts16
github.com 9y ago

Show HN: Progressive Web Tetris (play Offline via Service Worker)

skidding
12pts0
illustrated-algorithms.now.sh 9y ago

Show HN: Illustrated Quicksort algorithm

skidding
187pts48
facebook.github.io 11y ago

Introducing the JSX Specification

skidding
5pts1
skidding.github.io 12y ago

Show HN: Flatris, building a serializable app state with React components

skidding
1pts0
skidding.github.io 12y ago

Flatris

skidding
1pts0
skidding.github.io 12y ago

Lost flight home on my bday so I finished the framework demo at the airport cafe

skidding
1pts1
github.com 12y ago

Show HN: Drag-and-drop library for 2D, resizable and responsive lists

skidding
92pts23
github.com 12y ago

Play.js – agnostic transitions/animations (been using this class for years...)

skidding
1pts0
medium.com 12y ago

Learning through documentation

skidding
1pts0
skidding.github.io 12y ago

Obvious Buttons — almost flat Bootstrap alternative for CSS buttons

skidding
1pts0
blog.hootsuite.com 12y ago

HootSuite Acquires Social Analytics Leader uberVU

skidding
6pts3
medium.com 12y ago

Your local Dragdealer became more trustworthy

skidding
3pts2
www.quora.com 12y ago

What is the best social media monitoring tool and why? [Quora]

skidding
2pts0
news.ycombinator.com 13y ago

Ask HN: Is there a Hacker News/Reddit-like open source platform?

skidding
9pts8
github.com 13y ago

Trying to propose remote working where I work at. Opinions?

skidding
29pts53
chrome.google.com 13y ago

Quick hack for ignoring Facebook's new Sponsored Posts (Chrome)

skidding
9pts6
github.com 13y ago

Show HN: IMDB ratings, movie browsing for the lazy (Chrome)

skidding
12pts7
github.com 13y ago

Show HN: A small hack for browsing HN faster (Chrome users)

skidding
6pts3
ovidiu.ch 14y ago

Hello, #World - dynamic Twitter background

skidding
3pts0

Wow, author of Cosmos here. For the record I didn't post this. So thanks to OP and everyone who upvoted. It's cool that Cosmos still generates new interest after so many years.

Yes, Cosmos is very similar to Storybook. It's also older, and I'm only saying this because I'm tired of getting asked how does it differ. Both projects provide an isolated component environment to help tackle complexity in single page apps. The difference boils down to setup compatibility and personal taste.

I'm not gonna lie, some of the comments are tough to process, but what can you do. I still appreciate all feedback and as usual I'll try to incorporate it as best as I can.

it seems like this creates a webpage that you can use to speed up iteration on your components?

Pretty accurate. Cosmos is an isolated component environment. You can load components separately for regular development, as well as for automated visual regression testing.

What else does this do? What problem does it solve? How does it solve that? Saying it solves "Reusable components" is pretty generic, could use some expansion on how it actually helps in this regard.

I get that it's confusing, but the landing page literally addresses this:

- "Develop one component at a time. Isolate the UI you're working on and iterate quickly. Reloading your whole app on every change is slowing you down!"

- "Bookmark component states, from blank states to edge cases. Your component library keeps you organized and provides a solid foundation of test cases."

Scroll down and it goes into more detail in 6 concise paragraphs.

The live demo doesn't really work on mobile

That's true. But you can't really develop React apps on mobile either. React Cosmos is desktop dev tool that you run locally as part of your codebase.

Right next to the demo, however, there's a link to a 21-tweet thread with specific functionality, code examples and visuals included: https://twitter.com/ReactCosmos/status/1189127279533793281

I'm not going to use a project that cares more about "hype" than about delivering value

I can assure you I care a lot more about delivering value than hype. I spent countless hours (from my personal time) over the last 6 years on making React Cosmos easy to use and compatible with as many codebase configurations as possible, and maybe two weeks on the website.

The project README explains what the project does and what it doesn't: https://github.com/react-cosmos/react-cosmos/blob/main/READM...

There is an open thread about website feedback, and I agree I could've done a better job and there is still room for improvement: https://github.com/react-cosmos/react-cosmos/issues/1111

I generally avoid defaults exports as well but didn't realize some codebases disable them completely. What do you mean by "non-default-exporting" TSX files, can you provide a link?

Perhaps adding shim files that import the component and re-export as default?

Definitely, you could add a transform to the Cosmos build pipeline that renames some named export to default. If you're willing to write the transform I'll gladly help you integrate it.

The first version did! But I removed it because I didn't want Blizzard to take me down for copyright infringement, haha. And to be honest it was getting annnoying while I was working on the app cause I heard it dozens of times a day.

But Heartstone? Ha! Go back in time another 12 years.

I used to play Warcraft III in highschool and that sound stuck with me for sure.

I agree the book teaches many useful concepts!

OP: cool looking app, it’s really nicely done. Was this a “teach myself a language” sort of project? If not, what was the motivation? [Edit: just seen your comment below.]

Thanks! A combination of learning RN and adopting Deep Work principles by building something around it --- my favorite type of learning, albeit time consuming :).

You should definitely give react-native-web a look. I've had a good experience with it and the only issue is animation. I don't know how any UI animation lib can match the performance of hardware accelerated CSS transitions btw. As soon as you have to run user code on every frame things go south.

Of course I'd love to be proven wrong and shown what animation optimizations I missed in my code.

I haven't heard of Capacitor yet, but I've used Cordova in the past. Is it a big improvement?

Yes. This is what I meant with "for the most part".

So I first made the app web-only, which is what I know best. Used CSS animations and they were smooth!

Then converted the project to React Native (because I wanted to learn how to make a RN app). But because I wanted to keep using the web app I used react-native-web, which had also been intriguing me for some time.

Result? Animations became much slower! react-native-web basically polyfills RN's Animated library [0], so maybe it's not very optimal. But to be honest, even when running the native app the animations seem janky (tried on Android via Expo and on iOS simulator).

So react-native-web is a great project, but I'll likely not use it again for a similar project. I'm a web believer anyway, so I'll probably do just web apps going forward unless some use case really benefits from native APIs.

[0] I never looked at the source but I assume the code for web animations is here https://github.com/necolas/react-native-web/tree/3fa18becc76...

Pretty much.

The activities part is very experimental. I basically realised that I suck at planning my evenings and it's hard to disconnect unless a pasttime activity draws you in and shifts your focus.

That said, definitely looking for suggestions. Maybe a reminder to "plan evening activities for the following days" might be more suited than "ideas for what to do NOW".

See my related comment: https://news.ycombinator.com/item?id=18339840

I guess it's sad but true :)

Probably only applies to single people, though.

I have to say I've gotten much better at avoiding overworking myself lately, but evenings are still an issue (again, probably only relevant for single people).

The suggestions I've added help but not entirely, as evenings usually have to be planned in advance (you can't just summon friends at 5:59pm).

Going through these activity suggestions daily helps me in two ways: 1) it reminds me what a true afterhours activity looks like (ie. not more work stuff desguised as leisure) and 2) it reminds me to plan ahead my evenings in the near future.

Hey, Ovidiu the author here.

So how could this be interesting to you?

The app

I read a book called Deep Work to improve the quality of my work and found the simple "shutdown ritual" idea powerful. I started with a dead simple list that I went through every evening to clear my mind and disconnect from work.

Then I decided to build a simple app and keep iterating in small increments every day I also use the app. After about 2mo I use it daily and it looks good enough to draw a line. So I made it public in case anyone else finds it useful.

The codebase

Meanwhile, I wanted to learn React Native and try react-native-web. I also wanted to see how well styled-components behaves "unversally" and how to do server-side-rendering with RNW. It worked pretty well (for the most part...) and I learned a lot.

If you're interested in this tech stack I encourage you to dig through the codebase and maybe run it locally to get a feel.

If you have any questions related to the app or the codebase, fire away. I'll answer gladly!

Hey, auther here.

I posted the first version of this a few months ago, but I've now revamped the website and added examples with https://github.com/kentcdodds/react-testing-library, which I discovered recently and like a lot!

Also new are examples of using https://github.com/skidding/react-mock, released just a week ago.

Finally, rewrote the about page to explain the project's goals better and made the repo more contributor friendly.

Let me know what you think!