Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/lblod/frontend-validation-tool
Tool for validating/monitoring new publications
https://github.com/lblod/frontend-validation-tool
Last synced: 22 days ago
JSON representation
Tool for validating/monitoring new publications
- Host: GitHub
- URL: https://github.com/lblod/frontend-validation-tool
- Owner: lblod
- Created: 2024-01-15T09:15:15.000Z (12 months ago)
- Default Branch: master
- Last Pushed: 2024-05-03T09:24:28.000Z (8 months ago)
- Last Synced: 2024-05-03T14:06:49.794Z (8 months ago)
- Language: TypeScript
- Size: 2.91 MB
- Stars: 1
- Watchers: 4
- Forks: 2
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
FRONTEND-VALIDATION-TOOL
Table of Contents
- [Overview](#overview)
- [Features](#features)
- [Document Type Validation](#document-type-validation)
- [Validation Glue](#validation-glue)
- [Installation](#installation)
- [Usage](#usage)
- [CORS](#cors)
- [Testing](#testing)
- [Documentation](#documentation)
## Overview
A publication can have several requirements in order to make structural sense. These are the type of requirements that can be checked by this tool:
## Features
### Document Type Validation
Publications must meet structural requirements to ensure consistency and readability. The frontend supports validation for the following document types:
- Besluitenlijst
- Notule
- AgendaIn addition to specific document types, each publication is required to have a title, validated as a string to ensure it is present and correctly formatted. For "Notule" documents, there is an additional requirement to validate the maturity level, ensuring that these documents not only meet structural standards but also adhere to designated maturity criteria, adding a layer of depth to the validation process.
### Validation Glue
In order to properly validate an agenda item exists in a publication, we need to know the following:
- Agenda item
- title
- resolution
- vote
- decision
- Session
- time
- governing body## Installation
From
source
> 1. Clone the frontend-validation-tool repository:
>
> ```console
> $ git clone [email protected]:lblod/frontend-validation-tool.git
> ```
>
> 2. Change to the project directory:
>
> ```console
> $ cd frontend-validation-tool
> ```
>
> 3. Install the dependencies:
>
> ```console
> $ > npm install
> ```
> 3. Build the frontend:
>
> ```console
> $ > npm run build
> ```
> Note that you can define the environment by creating a `.ENV` file in the root and set `ENVIRONMENT=development` for development.## Usage
> Run the application using the command below:
>
> ```console
> npm run dev
> ```### CORS
Due to issues with CORS for publications published by vendors other than Gelinkt Notuleren changes needed to be made to the way the app proxies. We added a CORS-anywhere service in our stack to handle these request.
In our app we added a new path in the dispatcher. When this endpoint is called it will forward the url to the [cors service](https://github.com/lblod/simple-cors-service).
### Testing
> Run the test suite using the command below:
>
> ```console
> npm run test
> ```## Documentation
Link to the full documentation [here](https://app.gitbook.com/o/-MP9Yduzf5xu7wIebqPG/s/o6NmI5BUsBB4lH0um5Q4/).
[**Return**](#overview)