🔗 Software

In no particular order, the following lists the third-party software used in Awayto, along with their key features and a primary source for usage in the system:

Technology Description Source
Shell Command-line interface scripting /bin
Typescript Primary types, api handlers, and components /core
Docker Container service, docker compose, supports cloud deployments docker-compose.yaml
Kubernetes Distributed container environment, optional manual deployment path /kube
Postgres Primary database /db
SQLite File system database /fs
Node.js Primary runtime environment -
Yarn Package management api package, app package
Express.js API, webhooks /api
Bind9 Nameservers ns up
Nginx Reverse proxy, application server, exit server exit server, reverse proxy
ModSecurity Server security, OWASP coverage modsec install
Fail2Ban Server security exit up
EasyRSA Internal certificate authority builder up
Let’s Encrypt External certificate authority ns up
Tailscale Managed VPN deployment up
Hetzner Cloud deployment variant deployment up
AWS Cloud deployment variant (Future release) -
Keycloak Authentication and authorization, SSO, SAML, RBAC /auth
Redis In-memory data store redis api module
Graylog Log management and analysis, status dashboards graylog api module, content pack
MongoDB Logging database container only
ElasticSearch Logging database container only
Hugo Static site generator for landing, documentation, marketing /app/landing
React Front-end application library, Craco build customized /app/website
ReduxJS Toolkit React state management and API service redux store
DayJS Scheduling and time management library time utilities
Material-UI React UI framework based on Material Design module components
Wizapp Custom wrapper around OpenAI API custom prompts
Coturn TURN & STUN server for WebRTC based voice and video calling /turn
WebSockets Dedicated websocket server for messaging orchestration, interactive whiteboard /sock