nfsense/client/README.md
adro a64a0b2938 Added Structural Documentation
- Also renamed some directories for consistency
- Moved all components into corresponding subdirectories
- Minor Text Changes
2023-11-03 19:35:45 +01:00

1.1 KiB

nfSense Web Client

This folder contains the standard client for the nfSense firewall.

Goals and Priorities

The nfSense web client should be...

  • As reliable as possible
  • Pleasing to the eye and intuitive to new users
  • Fast, and not get in your way.

Technology

General Structure

The nfSense web client is a monolithic Single-Page Web-Application.

Critical Dependencies

We encourage any potential contributor to familiarize themselves with these tools and libraries before making changes, as they lie at the heart of the project.

  • Vue 3: Frontend Framework
  • Vite: Dev and Build Tool
  • Typescript: Adds Type Information to JS
  • Vue Macros: Replacement for the deprecated experimental Reactivity Transform feature of Vue 3

Important Dependencies

These libraries aren't mandatory to be able to work on the nfSense web client, this listing is merely meant to pre-empt redundancies.

  • ESLint: The standard JS linter, which we also use to enforce some code style choices.
  • Iconify: Icons (Could be replaced with custom ones)
  • Markdown-It: We prefer markdown for informational texts, and use this to render it on the frontend.