No description
Find a file
William Carroll b1c403f6b9 Create small command line program that parses arguments
Before starting my take-home assignment, the instructions advised me to create a
"Hello, world" program in the language of my choice. Since I'm choosing Haskell,
I created this example as my starter boilerplate.
2020-08-04 16:36:31 +01:00
boilerplate Prefer builtins.path 2020-07-02 13:28:59 +01:00
configs Add .sqliterc to //configs 2020-07-26 10:32:16 +01:00
emacs Remove week / 52 indicator 2020-07-17 15:39:37 +01:00
go Drop support for lorri 2020-03-27 10:59:50 +00:00
gopkgs Remove default values for Nix expression parameters 2020-03-01 22:32:24 +00:00
haskell-file Add a README to haskell-file 2020-07-20 10:10:04 +01:00
lisp Add README.md to //lisp 2020-04-05 16:18:26 +01:00
nixos Now removing "Closed" 2020-06-30 23:22:13 +01:00
playbooks Create //playbooks/sqlite3.md 2020-07-26 12:21:12 +01:00
scratch Create small command line program that parses arguments 2020-08-04 16:36:31 +01:00
third_party Remove default values for Nix expression parameters 2020-03-01 22:32:24 +00:00
todo-lists Mark Dangal as watched 2020-07-30 09:35:01 +01:00
tools Move monzo_ynab into //tools 2020-07-20 10:15:47 +01:00
utils Add README to //utils 2020-04-05 16:26:00 +01:00
website Create //playbooks 2020-07-20 14:38:50 +01:00
.envrc Clear $NIX_PATH 2020-07-02 14:39:08 +01:00
.gitignore Move monzo_ynab into //tools 2020-07-20 10:15:47 +01:00
default.nix Add ref attribute to fetchGit 2020-07-06 14:22:34 +01:00
dictionary.md Support dictionary.md 2020-07-21 12:58:13 +01:00
Makefile Rename dotfiles -> briefcase 2020-01-31 15:27:48 +00:00
README.md Update README.md 2020-04-04 14:29:28 +01:00

briefcase

Welcome to my monorepo: briefcase.

Herein you will find a variety of libraries, packages, and documents. Some of this work in finished and other work is incomplete or just a sketch for a future project.

Where applicable, I try to include README.md files in some of the subdirectories to help orient both myself and any onlookers.

Languages

To give you a general idea of the source code inside of this monorepo, here is the latest output from tokei --hidden --sort code .:

-------------------------------------------------------------------------------
 Language            Files        Lines         Code     Comments       Blanks
-------------------------------------------------------------------------------
 CSS                     9        67324        50733          218        16373
 Emacs Lisp            111        25326        15790         6337         3199
 Python                 99         7432         5414          623         1395
 JSON                   18         2235         2235            0            0
 Markdown               34         1771         1771            0            0
 TypeScript             25         1665         1317          115          233
 Nix                    65         1302         1115           82          105
 Go                     17         1256          926          173          157
 Vim Script              2          766          470           87          209
 HTML                   17          496          459           11           26
 Org                     8          420          411            8            1
 Haskell                 4          319          217           57           45
 Plain Text              5          145          145            0            0
 JavaScript             13          105           99            0            6
 Fish                    1           87           54           23           10
 Lisp                    3           83           43           23           17
 Elixir                  1           50           39            5            6
 Sass                    1           51           38            2           11
 TOML                    2           37           32            0            5
 Shell                   2           34           15            9           10
 Java                    2           11           11            0            0
 Makefile                2           14            9            3            2
 C                       1            6            5            0            1
 BASH                    2           10            4            2            4
 YAML                    1            5            4            0            1
 Rust                    1            5            3            1            1
-------------------------------------------------------------------------------
 Total                 446       110955        81359         7779        21817
-------------------------------------------------------------------------------

67,321 of the 67,324 lines of CSS comes from //website, which includes the template I use for my blog. Because I use TailwindCSS for my personal projects, most of the styling is embedded in the class atribute of HTML and JSX tags.

Sign posts

Below I have outlined a few projects that you might find interesting. I am using // to indicate the root of my monorepo, the directory in which this README.md resides.

  • //boilerplate: scaffolding for projects. Boilerplate's goal is to reduce the startup costs of a project.
  • //configs: my dotfiles (e.g. config.fish, init.vim). Eventually Nix home-manager should replace this.
  • //emacs: Emacs is both my preferred text editor and my window manager; with tens of thousands of lines of Emacs Lisp, you can safely assume that this directory hosts a lot of libraries and packages.
  • //monzo_ynab: systemd timer unit that imports my Monzo (i.e. a U.K.-based online bank) transactions into the personal finance tool YNAB (i.e. youneedabudget.com).
  • //nixos: my declarative configuration for my NixOS machines. If you are unfamiliar with Nix, I recommend reading about the NixOS project.
  • //tools: some scripts and projects that simplify my life.
  • //website: everything required to build my website, wpcarro.dev.

Notes to self

Here are a few reminders when setting up a new machine:

  • Use Nix home-manager to configure the new machine.
  • Ensure ~/.password-store exists.
  • Run export_gpg from a computer with my gpg credentials. Run import_gpg from the new machine.
  • Ensure the new machine can access my Github.