
Show HN: Matter - bretthellman
After a year in closed beta sweating the details, we’re excited to share Matter with everyone.<p>We believe:
1. Peer feedback is the silver bullet to reaching your aspirations.
2. People perform better when they hear monthly peer feedback (proven by science too!).
3. Everyone deserves the opportunity to achieve mastery, learn, grow, and be respected by their peers.<p>Matter makes feedback easier, pleasant, and more productive. A couple customer quotes:<p>&quot;The app is amazing. Everything about it, from the interface to the way in which I am able to send and receive feedback is amazing.&quot; 
- Product Manager at Dribbble<p>&quot;Matter is an empathetic experience which directly speaks to your heart, connecting yourself to your peers and driving betterment.&quot; 
- Designer at Adobe<p>&quot;As knowledge workers, we are paid to use our brains. We spend too little time improving how our brains work. Matter is an incredibly powerful way to grow your skills.&quot; 
- Product Leader at Airbnb<p>We hope you&#x27;ll try Matter and share your feedback -&gt; <a href="https:&#x2F;&#x2F;matterapp.com" rel="nofollow">https:&#x2F;&#x2F;matterapp.com</a>
======
jakobegger
I've spent about 10 minutes reading this post and the marketing website and I
am still not really sure what this does, except that it's an "empathetic
experience".

The animation that shows the app is so fast that I can't read the text and
don't understand what's going on.

The value proposition is very abstract. "Discover your strengths" or "Feel
amazing at work" doesn't really tell me what to expect.

All I can do on the page is sign up with my email address, but I'm not
convinced enough to risk getting another drip email campaign for a product I
don't think I need.

Maybe I'm just not your target audience.

~~~
imauld
Seconding this, I have no idea what this is for.

------
egfx
Where is all the text?? This doesn't work in either Firefox or Chrome, only
the background images show up. You may want to take a close look at that. FYI.
My Firefox has tracking protection and Chrome is free from any AdBlocking
extension.

~~~
bretthellman
@egfx what version of FF and Chrome are you using?

~~~
egfx
I tried this on multiple computers and Chrome is self updating, so latest. On
the other hand iPad, Chrome and Safari works. Just a guess, but I think this
has to do with login state.

------
keremkazan
Hi everyone! This is Kerem Kazan ( @MechanicalKazan), founding engineer
@Matter_HQ. I’m here to shed some light on questions coming from the engineers
among you. Here's a brief overview of how we built Matter:

Matter is a web app, written in NodeJS. For about 50% of our app, we use ES6
and compile it down via Babel. The more recent parts of our app is written in
TypeScript, and we are in the process of migrating the rest to TypeScript as
well. We also depend heavily on eslint & tslint for a consistent code style.
We have a fairly large code base, with 9 standalone packages that together
comprise Matter. We use yarn workspaces to orchestrate how these packages
depend on each other.

If I had to break down our app into its most fundamental parts, we’d have 4
sections:

a) @matterapp/matter-ui: Our frontend component library. Written in React,
developed with Storybook. We use styled-components along with grid-styled to
manage our css.

b) @matterapp/web-client: Our web app’s frontend code. At its core, it’s a
create-react-app project. It combines and composes the components in
@matterapp/matter-ui. We use Redux for local state management, and Redux-form
for our forms. We use Recompose for maintaining our higher order components.
Also, ReactRouter for client-side routing. For remote state management, we use
apollo-client. All of our user-facing api is written in GraphQL, (and yes,
it’s been amazing). We use CypressJS for automated end-to-end testing of our
entire app.

c) @matterapp/graphql-server: Our web app’s user facing api server. At the
bottom of the stack, we have Koa. Our Koa server connects to our MariaDB sql
database via KnexJS & Objection. We’re in the process of picking another ORM,
(something more typescript friendly). We’ll either go with TypeORM or
Sequelize-Typescript. Our server has one endpoint for user-facing api calls,
and that’s our GraphQL endpoint. Because Matter needs a bunch of 3rd party
integrations, we also use Grant for OAuth solutions. Authentication is handled
via the beloved jsonwebtoken library.

d) @matterapp/lambdas: Our background jobs system. We use serverless-framework
to interface with aws. This coebase is written purely in TypeScript. The users
never directly invoke calls on this part of our stack. This is strictly for
background jobs like batch processes or cron jobs. Usually, our graphql-server
puts something to an SQS queue, and the lambdas pick it up. Sometimes the
graphql-server sends direct api-calls via api-gateway. We use inversify-js on
our lambdas for inversion of control.

So, there you have it :) A brief overview of Matter’s tech stack. Let us know
what you think. Feel free to give some feedback, ask questions, or provide
criticism. Looking forward to learning from you!

~~~
onurozkan
You might want to check website with uBlock open, nothing able to initialize
hence only blank page displayed.

~~~
keremkazan
thanks for the feedback onur. i just installed the uBlock chrome extension,
and i could not reproduce the blank screen. Could it be another extension that
you are using? Device/browser details would be appreciated as well. thank you!

~~~
vasanthv
I am seeing an empty screen in Brave Browser.

------
bill_rr
What’s the app do?

