A JavaScript (11ty) rewrite of the former Duosmium website, previously written in Ruby/Middleman.
Visit: https://www.duosmium.org/
An archive of any tournament results that have been output as or converted into the SciolyFF (Science Olympiad File Format).
Minimal instructions for Unix-based systems (MacOS, Linux, etc.) that will likely need to be modified depending on your development setup:
git clone https://www.github.com/Duosmium/duosmium.git
npm install
npm run build
Windows doesn't use Unix shells/commands, so we have a separate build
function for it:
git clone https://www.github.com/Duosmium/duosmium.git
npm install
npm run build-windows
To run the site locally, you'll need the Netlify CLI in order to have the On-Demand Builders (which are just Netlify functions) to run properly. The site itself requires installing NodeJS and NPM.
To build the site for production, use:
npm run build # for Unix-based
npm run build-windows # for Windows
If you want to just build assets, you can use:
npm run build:webpack # for Unix-based
npm run build-windows:webpack # for Windows
The Eleventy dev server doesn't work well with the SciolyFF Previewer, but can be helpful for the results site. To run the Eleventy dev server, use:
npm run dev
If you have the Netlify CLI installed, you can run everything (including the previewer) locally. You may need to wait for assets to build before the site is ready. Make sure you're accessing the Netlify proxy server (usually port 8888) instead of the Eleventy dev server (usually port 8080).
npm run netlify
Contributions of code and tournament results are welcome.
To add new tournament results, make a Pull Request that adds a YAML file in format of SciolyFF in the data directory. You can also join the Discord Server, to contribute.
A Google Sheets input template
can be used to generate a CSV file that then can be converted into a SciolyFF
file using this site. The files
already in the data directory should serve as an example of expected output.
Additionally, the sciolyff
command line utility should be used to verify the
data files.
After the pull request is merged, the website will automatically generate an HTML results page that can be viewed by clicking on the appropriate link in the site index.