Websocket clock server web interface written in ReactJS/TypeScript
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Yann Weber ee7461d50d README.md update 3 years ago
public Initial commit 3 years ago
src Initial commit 3 years ago
.gitignore Initial commit 3 years ago
README.md README.md update 3 years ago
config.json Initial commit 3 years ago
package.json Initial commit 3 years ago
tsconfig.json Initial commit 3 years ago

README.md

Clock websocket React/TS UI

Web interface for websocket clock server writter in typescript/react.

Display a clock with possibility of changing timezone and adding alarms producing notifications using the JS Notifications API.

Example deployment here.

TODO

Replace the timezone update text input by two HTML selects, allowing to choose a continent and a city from selected continent. To implement this feature, the websocket server should implement a command returning a list of all available timezones.

Add some tests, using jest ?

Deployment

Configure & build

Install dependencies npm install

Change the WS_URL value according to server deployment configuration. edit src/config.json

Create an optimized production build npm run build

Copy ./build to webserver’s (/var/www/clock).

Nginx webserver configuration

Install nginx apt install nginx

Create server configuration

rm /etc/nginx/site-enabled/default
edit /etc/nginx/sites-available/clock
ln -s /etc/nginx/sites-available/clock /etc/nginx/sites-enabled/

Example server config :

server {
	listen 80 default_server;
	listen [::]:80 default_server;

	root /var/www/clock/;

	index index.html;

	server_name _;

	location / {
		try_files $uri $uri/ =404;
	}
}

Start a development server

npm run start