Site Tools


Hotfix release available: 2025-05-14b "Librarian". upgrade now! [56.2] (what's this?)
Hotfix release available: 2025-05-14a "Librarian". upgrade now! [56.1] (what's this?)
New release available: 2025-05-14 "Librarian". upgrade now! [56] (what's this?)
Hotfix release available: 2024-02-06b "Kaos". upgrade now! [55.2] (what's this?)
Hotfix release available: 2024-02-06a "Kaos". upgrade now! [55.1] (what's this?)
New release available: 2024-02-06 "Kaos". upgrade now! [55] (what's this?)
Hotfix release available: 2023-04-04b "Jack Jackrum". upgrade now! [54.2] (what's this?)
Hotfix release available: 2023-04-04a "Jack Jackrum". upgrade now! [54.1] (what's this?)
New release available: 2023-04-04 "Jack Jackrum". upgrade now! [54] (what's this?)
Hotfix release available: 2022-07-31b "Igor". upgrade now! [53.1] (what's this?)
Hotfix release available: 2022-07-31a "Igor". upgrade now! [53] (what's this?)
New release available: 2022-07-31 "Igor". upgrade now! [52.2] (what's this?)
New release candidate 2 available: rc2022-06-26 "Igor". upgrade now! [52.1] (what's this?)
New release candidate available: 2022-06-26 "Igor". upgrade now! [52] (what's this?)
Hotfix release available: 2020-07-29a "Hogfather". upgrade now! [51.4] (what's this?)
2.0

This is an old revision of the document!


Planner V2

Overview

The second iteration of Planner4You.

Style guide

TBA

Planner V2 Structure

App Structure Overview

Both the frontend and backend are programmed in Typescript which is executed by the ts-node package; Typescript is a type safe, and more structured superset of the javascript lanugage (ES6/ES12-ES2021). We use Yarn on the frontend and backend also, to install packages (like ts-node) and run a local development server.

A GraphQL server is used in the backend, to provide structured and secure access to the data in our Database. We've not currently chosen a server to serve the backend code to the client, therefore, the project only works locally from development enviroments.

Our database is implemented in Postgres, which is a relational database that uses SQL.

Frontend

Backend

Packages

ts-node

ts-node is a typescript execution engine that allows us to write this project as typescript instead of javascript. ts-node is essentially a `source-to-source compiler` / `transpiler`, as it turns one language into another, i.e. typescript into javascript.

GraphQL (Apollo)

We use Apollo GraphQL as our implementation of GraphQL. (Tutorial here)

cross-env

cross-env is used for setting the environment mode the project is run in, in a OS independant way. It is used in the package.json file.

blipp is a simple hapi plugin to display the routes table to console at startup.

Database

We're Using a postgress database

ERD cardinality key

TBA

Database ERD

TBA

Project setup and Build

Run the project locally

Using the scripts in the package.json file in the backend directory, use Yarn to run the 'dev' script, e.g.

yarn run dev"

which is the same as running, </code>yarn run cross-env NODE_ENV=development ts-node-dev –files – ./src/index.ts</code>

Potential build issues, and their fixes

Deploy a build live

2.0.1761734650.txt.gz · Last modified: 2025/10/29 11:44 by 20.171.207.2