Pro

Structure

You get the basic structure in which you have endless freedom

App

Directories inside are just a special case of components. These components are roots of your application. Think of them as rooms if your application is a building.

Components

Components are real things you can touch as a user. If something has source in user action it's a part of a component. Treat these as items you can place wherever you want in your rooms. If a component is not reusable and it's specific for one place keep it in room subdirectory though.

In Pro component is a fullstack concept and it contains also backend.

Services

Services just like components are reusable but they are not material. They are pure ideas you can use in components, jobs or both.

Jobs

As components lives in users world jobs are in hands of operators. They may be fired periodically or manually. As you don't need to care about latency here you might want to run it on a separate server with a separate message bus.

Tools

This is the most amazing part of Pro. Here are placed implementations of different technologies. All of them know and share the structure. That's why you can be polyglot and use whatever language you want in one application.

Procfile

This is a configuration file of Foreman. If you want to support some technology you need to choose the server and tell how to boot it in here.

Component example

articles/
article/
index.jsx
to_pdf.py
edit.rb
index.jsx
article.scss
icon.png
get.rb
README.md

CONTACT ME AT MAD@MANIAK.PRO. I NEED YOUR QUESTIONS.