Files
am-d-model.eu/README.md
2025-02-11 01:24:21 +00:00

2.2 KiB

Research Project Website

This repository contains the source code for the AM-D-Model project's public-facing website. The site serves as an info page, as well as an invitation to collaborators and portal to our other tools.

Getting Started

Prerequisites

This project uses devenv.nix to manage the development environment, which will handle all prerequisites automatically. Make sure you have devenv installed on your system. If you wish to avoid using devenv it should also work fine directly using bun, node, or deno, but i can't make any promises as i use devenv.

Installation

  1. Clone the repository:
git clone https://github.com/Cian-H/am-d-model.eu.git
cd am-d-model.eu
  1. Start the development server:
    • via bun (recommended)
    bun install
    bun run dev
    
    • via node.js
    npm install
    npm run dev
    
    • via deno
    deno install --allow-scripts=npm:svelte-preprocess,npm:@parcel/watcher
    deno run dev
    
    • via docker
    docker build --tag am-d-model-site:latest .
    docker run -p 3000:3000 am-d-model-site
    

The site will be available at http://localhost:3000

Other Commands

  • bun preview: Run a preview of the production build
  • bun build: Build the site for production
  • docker compose up: Deploys a docker composition including a caddy reverse proxy, ready to be deployed to web infrastructure
  • just deploy: Deploys a full docker composition and initialises databases, for first deployment of site

Deployment

For simplicity, deployment is manually triggered via justfiles. More complex solutions may be implemented in future but for now, simplicity is a virtue.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgements

Thanks to the extremely friendly community of the inveniosoftware discord, and in particular Martin Fenner and his alternative invenio deployment using gunicorn and caddy. Trying to get this to work via the traditional uwsgi and nginx was a nightmare; one he had apparently already discovered and worked around.