commit a1edace600b48080372723b375cba98ff2b8e4a4
parent 5354c950faaafecd5c58644353fd043acec8ac4e
Author: James Eversole <james@eversole.co>
Date: Sun, 18 Feb 2024 18:53:54 -0600
Update both README and LICENSE (still ISC)
Diffstat:
| M | LICENSE | | | 4 | +++- |
| D | README | | | 51 | --------------------------------------------------- |
| A | README.md | | | 67 | +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
3 files changed, 70 insertions(+), 52 deletions(-)
diff --git a/LICENSE b/LICENSE
@@ -1,4 +1,6 @@
-Copyright 2022 James Eversole (james@eversole.co)
+ISC LICENSE
+
+Copyright James Eversole (james@eversole.co)
Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.
diff --git a/README b/README
@@ -1,51 +0,0 @@
-purr
------
-
-https://purr.eversole.co
-a work-in-progress web application offering customizable password generation
-and time-limited sharing of secrets.
-
-TECH STACK
-
-- Haskell and Scotty backend
-- HTMX frontend
-- SQLite database
-
-GOALS
-
-- Generate sufficiently memorable but secure passwords for use with accounts
-that don't offer better authentication methods.
-
-- Share text secrets with others without disclosing the secret in the
-message itself.
-
-- Provide a minimal and clean interface for generating and sharing passwords.
-
-- Maintain a clean and organized codebase that can be extended to include more
-utilities than originally anticipated.
-
-- Be really cute compared to the competition.
-
-WHY TRUST YOU?
-
-You shouldn't. This is free and open-source software which you can run on your
-own hardware.
-
-DEPLOYMENT
-
-Only Nix build instructions targeting containers are provided below,
-but this project can be built and run without containers or Nix using Cabal.
-
-- Clone this repository
-- Build the container image (with flakes enabled): `nix build .#purr-container`
-- Load the container image
- - podman load -i result
-- Use the provided docker stack example to deploy the container if desired
- - docker stack deploy -c docker-stack.yml purr
-
-DEVELOPMENT & SUPPORT
-
-Per the permissive ISC license, you are free to do what you wish with this software. I hold
-no liability for any defects and no guarantees are made to its usability.
-
-Copyright James Eversole (james@eversole.co)
diff --git a/README.md b/README.md
@@ -0,0 +1,67 @@
+# purr
+
+[purr.eversole.co](https://purr.eversole.co)
+
+a simple web application offering customizable password generation
+and time-limited sharing of secrets.
+
+## TECH STACK
+
+- [Haskell](https://www.haskell.org)
+- [Scotty](https://hackage.haskell.org/package/scotty)
+- [HTMX](https://htmx.org)
+- [SQLite](https://www.sqlite.org)
+
+## GOALS
+
+- Provide a minimal and clean interface for generating and sharing passwords.
+- Generate sufficiently memorable but secure passwords for use with accounts
+that don't offer better authentication methods.
+- Share text secrets with others without disclosing the secret in the
+message itself.
+- Maintain a clean and organized codebase that can be extended to include more
+utilities than originally anticipated.
+
+## WHY TRUST PURR.EVERSOLE.CO?
+
+You shouldn't. This is free and open-source software which you can run on your
+own hardware!
+
+## DEPLOYMENT
+
+Only Nix build instructions targeting containers are provided below,
+but this project can be built and run without containers or Nix by using Cabal.
+
+1) Clone this repository
+2) Build the container image (with flakes enabled): `nix build .#purr-container`
+3) Load the container image
+ - podman load -i result
+4) NixOS configuration:
+```
+virtualisation.oci-containers.containers.purr = {
+ image = "purr";
+ ports = [ "${PURR_EXTERNAL_PORT}:3000" ];
+ volumes = [
+ "/PATH/TO/PURR/data:/app/data"
+ ];
+ environment = {
+ PURRNOFILE = "true";
+ ENVIRONMENT = "production";
+ APPLICATIONHOST = "localhost";
+ APPLICATIONPORT = "3000";
+ DATADIR = "/app/";
+ LINKLENGTH = "24";
+ ADMINEMAIL = "${YOUR_EMAIL}";
+ };
+};
+```
+5) Docker Stack
+ 1) Set environment variables in docker-stack.yml or mount a .env file.
+ 2) `docker stack deploy -c docker-stack.yml purr`
+
+## DEVELOPMENT & SUPPORT
+
+Per the permissive ISC license, you are free to do what you wish with this
+software. No guarantees are made to its usability, security, or functionality.
+
+Copyright James Eversole (james@eversole.co)