Skip to content
/ Tirith Public

Angular & NEST fullstack application for skribbltypo website & dashboard

Notifications You must be signed in to change notification settings

toobeeh/Tirith

Repository files navigation

Tirith

part of Typo ecosystem

Tirith is an fullstack application which aims to provide a web-interface to access and manage skribbltypo related data.
It is split into a NEST backend which serves as API for the frontend and the skribbltypo extension, and an Angular frontend which replaces the legacy skribbltypo website.
The website features an introduction to the extension, various tools and helpers for Palantir, an user dashboard and a restricted additional admin dashboard.

API

The API uses rich swagger annotations to generate a meaningful openapi spec and the frontend api client from that.
There is also a swagger interface available for the public api. Authentication is done by providing a BEARER token in the headers; each user has an individual token for use across typo and can be obtained on the /login page on the website.
The api uses the toobeeh/Valmar service, which is an internal component of the typo ecosystem, for database access and domain logic.
To implement new features, Valmar will need to support them first as well.
The Tirith api adds a "public interface" on top of Valmar, taking care of authentication, rate-limiting and caching if needed.

Frontend

The frontend angular application is split into modules:

  • public for static/information/tool content
  • auth which features the authentication page to login with Discord
  • admin containing the admin dashboard.
  • user - the user dashboard, primary for server management

Additionally, there is the API service module, which is auto-generated via openapi tools based on the backend openapi specs.

The frontend is live on the www subdomain and probably also accessible via redirect from the typo TLD https://typo.rip

About

Angular & NEST fullstack application for skribbltypo website & dashboard

Topics

Resources

Stars

Watchers

Forks

Packages

 
 
 

Languages