360° survey tool experiment in SvelteKit
Find a file
2025-04-27 19:35:24 +02:00
cypress provide E2E testing infrastructure (closes #21) 2025-04-27 19:35:24 +02:00
drizzle provide E2E testing infrastructure (closes #21) 2025-04-27 19:35:24 +02:00
src provide E2E testing infrastructure (closes #21) 2025-04-27 19:35:24 +02:00
static Initial commit 2024-11-25 08:40:14 +01:00
.gitignore Initial commit 2024-11-25 08:40:14 +01:00
.npmrc Initial commit 2024-11-25 08:40:14 +01:00
.prettierignore Initial commit 2024-11-25 08:40:14 +01:00
.prettierrc Initial commit 2024-11-25 08:40:14 +01:00
cypress.config.ts provide E2E testing infrastructure (closes #21) 2025-04-27 19:35:24 +02:00
docker-compose.yml - prepare for external testing 2024-12-13 08:35:05 +01:00
Dockerfile - prepare for external testing 2024-12-13 08:35:05 +01:00
drizzle-init.js - add missing file 2024-12-13 08:43:45 +01:00
drizzle.config.ts - update drizzle config 2024-12-13 08:36:38 +01:00
entrypoint.sh - add custom entry point 2024-12-13 08:44:13 +01:00
eslint.config.js Initial commit 2024-11-25 08:40:14 +01:00
LICENSE select MIT license 2024-12-29 22:20:18 +01:00
logo.png longer session duration 2025-01-06 16:29:54 +01:00
logos.svg longer session duration 2025-01-06 16:29:54 +01:00
package-lock.json provide E2E testing infrastructure (closes #21) 2025-04-27 19:35:24 +02:00
package.json provide E2E testing infrastructure (closes #21) 2025-04-27 19:35:24 +02:00
postcss.config.js Initial commit 2024-11-25 08:40:14 +01:00
README.md installation docs 2024-12-29 16:46:20 +01:00
svelte.config.js Implement shared survey access. 2025-01-26 17:56:25 +01:00
tailwind.config.ts Initial commit 2024-11-25 08:40:14 +01:00
tsconfig.json Initial commit 2024-11-25 08:40:14 +01:00
vite.config.ts Initial commit 2024-11-25 08:40:14 +01:00

Three60

A very, very simple 360° review tool. Supports self-registration of users and limiting the registration to certain email address domains.

Caution

While this is getting more and more into shape and I am trying my best to create a secure system, it still is just a toy for me to experiment with SvelteKit and a few other libraries. Use in production at your own risk!

Installation

  • npm install
  • npm run build

This will give you the compiled application in ./build, which you can run with node build/index.js.

There is also a Dockerfile of sorts, so feel free to give docker build . a spin.

Configuration

Three60 accepts various configuration options through environment variables:

  • DATABASE_URL (required) - Configures the database connection. Three60 only supports MySQL databases at the moment. Example: mysql://user:password@db-host:3306/three60

  • ENABLE_REGISTER - Enable user self registration. Since there is no admin interface yet, you should probably set this to true

  • ALLOWABLE_DOMAINS - Limit the domains people can use in their email addresses when registering an account. If empty, all domains are allowable. Multiple domains are separated by comma.

  • EMAIL_VERIFICATION_DISABLED - Disable verification of emails on registration. If this is true, no verification emails will be sent out and accounts will be immediately enabled. Be careful with this type of setup in a public environment, as this will allow anybody to register with any mail address, even if they don't actually own it.

    Note: When email verification is enabled, the email config below becomes required.

  • SENDER_FROM - The From: header of all emails sent. Can have the form "Name address@example.com". Make sure, that emails with this sender can be sent via the email host configured below.

  • EMAIL_SERVER_HOST - The SMTP server to send the emails through.

  • EMAIL_SERVER_USER - The username used to authenticate at the email server to send emails.

  • EMAIL_SERVER_PASSWORD - The password used to authenticate at the email server to send emails.