Skip to content

Latest commit

 

History

History
133 lines (93 loc) · 2.92 KB

FEATURES.md

File metadata and controls

133 lines (93 loc) · 2.92 KB

Features

Status Checks

  • List checks
  • Reboot
  • Disable new versions
  • Prevent virtual rendering?
  • Add filter for domain (or group domains?)
  • Add summary
  • Refresh status when enabling/disabling version check

TLS Certificates

  • List certificate status
  • Install custom certificate
    • Generate CSR without country selection
  • can_provision logic (/ssl/provision)
  • Replace/Install actions

Backup Status

  • List backup status
  • Save backup config
    • Reflect current backup config in form

Custom DNS

  • List custom DNS records
  • Add custom DNS record
  • Remove custom DNS record
  • Add secondary nameserver
    • Add secondary nameserver clear instructions
  • Update API schema to support omitting type (for dynadns) (add new endpoints)
  • Add grouped list
  • Reloading the dns/custom/add route results in error

External DNS

  • List all DNS records with corresponding info
  • Download Zone file (Zone file generator)

Mail Instructions

  • List instructions
  • Download instructions PDF

Mail Users

  • List mail users
  • Update mail user privilege (normal/admin)
  • Update mail user password
  • Archive mail user account
  • Add mail user
  • Fix user actions (eg archive)

Mail Aliases

  • List mail aliases
  • Update mail alias
    • Prevent update of alias address
    • Prevent changing type
  • Remove mail alias
  • Add mail alias

Contacts/Calendar

  • List Contacts & Calendar Synchronization information
  • Download sync guide

Web

  • List domains
  • Change domain root directory
  • List uploading instructions

API

  • API client
  • Mock data returned from API client via middleware
  • Error handling for all requests

State

  • Redux store
  • Reduce the amount of selectors - extract from state directly (see redux-toolkit advanced docs)
  • Top-level URL state
  • Sub-level URL state (eg /mail/users/add)
  • Don't always refresh data lists on mount, instead refresh them after actions, and store open groups in state
  • Normalise store (eg when performing actions, don't replicate entities): https://redux.js.org/introduction/learning-resources#normalization

Main layout

  • Primary Nav
  • Body containers

Forms

  • Simplify field data handling - use object instead of separate vars
  • Add spinners to buttons

Auth

  • Log in
  • Remember me (stored in local/session storage)
  • Log out
  • Middleware for redirections with 403

Performance

  • Async imports & code splitting
  • Try reduce bundle size

Routes

  • Fix 404
  • External DNS route scrolls to top of page when changing nested routes

Accessibility

  • Mobile support
  • ARIA labels
  • Audit

Production

  • Customise the root box url

Project Setup

  • README updated
  • LICENSE added
  • Screenshots added to wiki