Architecture diagram

Refract system architecture record

A supporting architecture view of the Refract implementation across the frontend, backend, database, vector store, and file storage layers.

system architecture
Record

A technical view of the application boundaries

This diagram exists to make the system legible at the service and storage level. It shows how application state, uploaded documents, retrieval, and analysis outputs are separated without breaking the continuity of the session model.

The preview image is enough for visual reference, so the accompanying text stays focused on interpretation rather than repeating the diagram.

System reading

The architecture answers four practical questions

The point of the record is less about naming components than about explaining how responsibilities are divided.

Interface

Where does the research interaction happen?

The frontend holds the surfaces where reading, evidence capture, comparison, and analysis are actually used.

Workflow

Where is application logic coordinated?

The backend handles the service layer that connects uploaded material, session state, and later analytical operations.

Persistence

What kinds of state need to survive?

Relational state, stored files, and retrieval-specific context all have to remain available across the life of the session.

Interpretation

What keeps the parts from drifting apart?

The shared research session is the seam that allows these layers to stay coordinated instead of becoming separate tools.

Interpretation

The important seam is the shared research state

The diagram can look broader than the implemented product if it is read too aspirationally.

A diagram can make a system look more complicated than it is, or it can reveal what actually matters. In this case, the most important seam is not simply that the app has a frontend and a backend. It is that the research state must remain coherent across document operations, evidence capture, comparison logic, and later statistical work. That is the requirement the architecture has to satisfy.

At the same time, an architecture view should not be mistaken for proof of maturity. It explains design intent and system boundaries, but it does not replace the need to inspect how fully those intentions have been realized in the working product.