a french crosswords dictionnary web application https://ods.adyxax.org/
Find a file
Julien Dessaux 08828efbb4
Some checks failed
/ test (push) Successful in 11s
/ build (push) Successful in 16s
/ publish (push) Has been cancelled
/ deploy (push) Has been cancelled
chore(tooling): add build, deploy and release actions workflow steps
2025-03-13 01:50:40 +01:00
.forgejo/workflows chore(tooling): add build, deploy and release actions workflow steps 2025-03-13 01:50:40 +01:00
.git-crypt Add 1 git-crypt collaborator 2024-03-24 18:28:15 +01:00
static feat(ods): implement basic ods functionality 2024-03-25 13:58:48 +01:00
.gitattributes chore(dictionary): go mod init and initial dictionary 2024-03-24 18:32:25 +01:00
.gitignore chore(tooling): remove unused tooling 2025-03-12 01:09:40 +01:00
GNUmakefile chore(tooling): remove unused tooling 2025-03-12 01:09:40 +01:00
go.mod chore(deps): update dependencies 2025-03-10 12:33:54 +01:00
go.sum chore(deps): update dependencies 2025-03-10 12:33:54 +01:00
index.html chore(ods): rewrite the core http server handling 2025-03-12 01:10:06 +01:00
LICENSE Initial import 2024-03-24 18:26:14 +01:00
main.go chore(ods): rewrite the core http server handling 2025-03-12 01:10:06 +01:00
ods.txt chore(dictionary): go mod init and initial dictionary 2024-03-24 18:32:25 +01:00
README.md chore(ods): add README 2025-03-13 00:49:41 +01:00

ODS

ODS is a simple French crosswords dictionnary web application. It displays a simple input form that users can use to submit words. The web application will return whether the words are valid or not in the French scrabble.

Dependencies

go is required. Though the code most certainly work on many operating systems, only go version >= 1.24 on Linux amd64 is being regularly tested.

Quick Start

There is a makefile with everything you need, just type make help (or gmake help if running BSD) to see the possible actions.

Use make build to build a static binary of the service, embedding everything.

The dictionary

The "Officiel Du Scrabble" (ODS for short) is what the official dictionary for the scrabble game is called. One very sad thing is that this dictionary is not free! You cannot download it digitally, which seems crazy for a simple list of words. You might use your google-fu and maybe find it on some random GitHub account if you look for it, but I certainly did not.

This repository relies on git-crypt to secure the content of my own dictionary file, sorry for not sharing it.

Systemd service

I use this simple systemd service unit to run ODS:

[Unit]
After=network-online.target
Description=ods.adyxax.org service
Wants=network-online.target

[Service]
DynamicUser=yes
Environment="ODS_PORT=8090"
ExecStart=/usr/local/bin/ods
Type=simple

[Install]
WantedBy=multi-user.target

Nginx reverse proxy

I use this simple nginx configuration in front of ODS:

server {
	listen  80;
	listen  [::]:80;
	server_name  ods.adyxax.org;
	location / {
		return 308 https://$server_name$request_uri;
	}
}

server {
	listen  443       ssl;
	listen  [::]:443  ssl;
	server_name  ods.adyxax.org;

    error_page  404  /404.html;
	location / {
        include  headers_static.conf;
        proxy_pass  http://127.0.0.1:8090;
	}
	ssl_certificate      adyxax.org.fullchain;
	ssl_certificate_key  adyxax.org.key;
}