Skip to content
This repository was archived by the owner on Feb 15, 2022. It is now read-only.
This repository was archived by the owner on Feb 15, 2022. It is now read-only.

Spektate repo needs frontend and backend separation #1353

@andrebriggs

Description

@andrebriggs

Problem

We have backend and frontend code in different directories in the Spektate repo.

We do not have separate packages.json for the two distinct codebases. Instead a single package.json lives at the root.

Proposed Change

Create a package.json explicitly for the frontend and backend. A future version of the top level Spektate repo could look like

.
├── backend
│   ├── package.json
│   └── ...
├── frontend
│   ├── package.json
│   └── ...
└── packages/Spektate
│   ├── package.json
    └── ...

Why

Coupling the frontend and backend codebase makes it harder for use to innovate independently. For instance if we add logic to the backend it will force a dependency in the frontend. Many UI related libraries may require versions of dependencies that conflict with the backend.

Moreover it is a typical pattern to separate a frontend and backend. See this example and repo of best practices for structuring a react app.

Additional considerations

Eventually we may want to consider Lerna as a way to handle mono-repo structures with some dependency management help built in. For the moment we should at least separate the frontend and backend

Related to #1090

Metadata

Metadata

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions