30 Commits

Author SHA1 Message Date
3863ddf42e Remove redundant entry point; adjust comments in main init; update init function names from 'main' 2024-02-24 13:07:33 -06:00
66cf9d4600 More explicit error handling and messages when required environment variables are missing 2024-02-20 07:48:54 -06:00
5072fb4df4 Clarify README further, ensure production logger is used when set to PRODUCTION environment 2024-02-18 19:34:16 -06:00
4909bb9c96 Extensive commenting of functions; refactor some duplicate pattern matching logic 2024-02-17 14:56:13 -06:00
7796fcb9b4 Move static assets into data dir 2024-02-17 13:44:55 -06:00
c26c7e8696 Allow users to opt out of reading anything from the expected environment file location 2024-02-17 09:28:47 -06:00
0e8144b82c Don't allow configuration of dbFile path or name; use the DATADIR and a hardcoded path 2024-02-17 08:41:39 -06:00
dbe5cb2985 Update environment variables to support custom data directory 2024-02-17 08:23:10 -06:00
5484699565 Remove Dhall dependency and ReaderT; use dotenv; create encryption key on startup if it doesn't exist 2024-02-17 07:46:09 -06:00
9ad3d1ee7a Working saltine encryption and decryption 2024-02-16 18:30:06 -06:00
9efdc01828 Pure nix flake; replace crypto-simple with Saltine; update README and TODO 2023-05-02 21:26:40 -05:00
ed2ebc91b8 Longer pure random password offering. Remove some wordlist options. 2023-01-16 19:21:04 -06:00
2889c7e9e7 Use EFF wordlist. Embed wordlist into executable. Move views/public to assets/public. Move wordlist into assets. 2023-01-11 15:23:01 -06:00
cb45c4ce1d Start formatting with stylish-haskell. Start refactoring for clearer types. 2023-01-10 21:53:10 -06:00
117d8793dd Completely overhaul frontend styling for clearer usage. Add support for entering either the full link or just link key for viewing secrets without opening links anew. 2022-12-26 21:49:21 -06:00
2a4787fc84 Refactor excessive do notation. Complete oldschool and gibberish generators. Add frontend functionality for selecting from multiple generator styles. Add config requirement for admin email. Add admin email to header. 2022-08-07 16:22:09 -05:00
1be99a44ff Add favicon. Significantly modify layout and presentation of site by including flexbox for main content. Remove logo from index. Code whitespace updates on Sharing-SQLite 2022-08-05 19:43:39 -05:00
910859bce6 Track the number of views for secrets, delete secrets on next lookup attempt when the lifespan or max viewcount is exceeded. 2022-08-05 15:42:37 -05:00
ca73ed7982 Read encrypted secret entries from the database and decode/unencrypt appropriately, add max duration/view count entries for the database and frontend interface, update README to remove graceful JS degradation goal, remove a few wordlist entries 2022-07-31 17:41:54 -05:00
478384aae9 Secrets are now stored as AES encrypted -> Base64 encoded strings, retrieval is still plaintext and will need to be updated to reflect the required unencoding and decryption process 2022-07-29 20:31:58 -05:00
bbe315c450 Random generation of xkcd-style passwords now functioning as expected, web interface now serves randomly generated xkcd-style passwords and provides a button to create a sharing link for them when a new generation is requested. Misc stylesheet updates. Generalized the hx-vals helper function in Core.Templates to be useful for arbitrary endpoints that will need to include specific JSON. Added configuration field for dbSalt which will be used as an encryption salt in the next commit when passwods are stored encrypted in the DB instead of in plaintext. 2022-07-29 17:40:45 -05:00
b1a4251d95 Started building generation functionality, added useful haddock-style comments for several functions 2022-07-22 12:27:35 -05:00
10e3724a1a Added loading indicators via htmx-indicator, removed unattributable ASCII art and replaced with the project logo from the README, minor touches on stylesheet and added clickable links in the display. 2022-07-19 15:57:30 -05:00
1718e69533 Squashed commit of the following:
commit 9aaa5307e7671bc8bcc444733a6e38999f346772
Author: James Eversole <james@eversole.co>
Date:   Mon Jul 18 16:03:43 2022 -0500

    Completed migration to SQLite, full feature parity with original Mongo/Couch implementations. Added ability to submit new passwords with full frontend functionality. Generation of random links now functions as expected and Unix Epoch Timestamps are now included in DB entries.
2022-07-18 16:04:10 -05:00
6a0b5b0144 Squashed commit of the following:
commit 86ee3c4d262916bec531ad5616273b391cdffeb3
Author: James Eversole <james@eversole.co>
Date:   Tue Jul 5 20:09:22 2022 -0500

    Refactored findByLink for modularity, started prototyping document creation

commit 65b68df295069edb57adcdc16a3300c9d762dc2f
Author: James Eversole <james@eversole.co>
Date:   Tue Jul 5 18:45:25 2022 -0500

    Feature parity with MongoDB implementation in main; need to refactor Feature.Sharing.Couch.findByLink into multiple functions so that more information regarding retrieved documents can be used compositionally to DRY before merging into main

commit e10cc4de8acd45488679f0587732f02fee950c77
Author: James Eversole <james@eversole.co>
Date:   Mon Jul 4 20:53:55 2022 -0500

    Better configuration file keys

commit d683a51cac4ad891856f7782aa6221402988fea4
Author: James Eversole <james@eversole.co>
Date:   Mon Jul 4 20:38:40 2022 -0500

    Added beginnings of CouchDB logic while removing all Mongo references and dependencies. Updated configuration file and related data types. Added a MonadHttp instance for PurrAction to enable requests in their monadic context. Will merge into main once feature parity on the Sharing Feature is reached
2022-07-05 20:11:41 -05:00
f1b18f3b47 Updated README with project goals, started prototyping frontend and added route for primary css dist, added reasonable functionality for requesting a password directly via link as well as patching index DOM when requesting HTML stub from /pw 2022-07-03 21:48:40 -05:00
f088ff3690 Beginnings of HTMX frontend interaction, able to request particular PWs by link names and patch the DOM appropriately 2022-07-02 18:37:30 -05:00
d15b40a339 Added Shakespeare templating and setup basic Maybe-bound lookup for conditional rendering of the page or an appropriate notice that the password doesn't exist. 2022-07-02 13:23:53 -05:00
f7a61dcddc Organize application logic by core/feature breakouts, add dhall configuration support and add a range of new config options in the Reader, add example configuration/deployment files 2022-07-01 20:34:29 -05:00
b4d6e9c9d1 Initialize stack environment and repository 2022-06-28 20:30:09 -05:00