Make all the changes described in these files. Delete assets/css/phoenix.css as it is no longer used.
- config/dev.exs
- assets/package.json
- assets/postcss.config.js
- assets/tailwind.config.js
- assets/css/app.css
- mix.exs
| <?php | |
| // (Keep the same PHP server-side code here as before for brevity) | |
| // ... | |
| // Then HTML head etc. omitted for brevity | |
| ?><!doctype html> | |
| <html lang="en"> | |
| <head> | |
| <meta charset="utf-8" /> |
| # Note: can also just install nerdctl-full | |
| sudo apt-get update | |
| sudo apt-get install containerd | |
| wget https://github.com/containerd/nerdctl/releases/download/v1.5.0/nerdctl-1.5.0-linux-amd64.tar.gz | |
| tar -zxf nerdctl-1.5.0-linux-amd64.tar.gz nerdctl | |
| sudo mv nerdctl /usr/bin/nerdctl | |
| rm nerdctl-1.5.0-linux-amd64.tar.gz |
Make all the changes described in these files. Delete assets/css/phoenix.css as it is no longer used.
| # set a loop for running commands, will run unit tests on enter | |
| while read; do go test ./...; done | |
| # set a loop that runs once a second (like watch), can be used in cases watch doesn't fit as well | |
| while sleep 1; do ls; done | |
| # do something with the previous command | |
| pwd | |
| ls $(!!) # equivalent to ls $(pwd) |
| nothing: | |
| literally_nothing: |
This is handy for cases such as needing to dynamically assign structs, for example when use with marshalling or when assigning the results of a SQL query into a struct, without duplicating code for each type. This is a naive implementation as it takes absolutely no error checking into account. It is not production safe and is meant to demonstrate how to iterate through and populate a struct.
Example usage
type Foo struct {
Int int
String string
Unassigned string
}
| defmodule StructParser do | |
| import NimbleParsec | |
| @space 0x0020 | |
| @tab 0x009 | |
| whitespace = utf8_char([@space, @tab, ?\n]) | |
| ignore_whitespace = | |
| lookahead(whitespace) |
| defmodule Test.Parser do | |
| import NimbleParsec | |
| # iex(9)> Test.Parser.parse """ | |
| # ...(9)> FOO = 1 (some foo) | |
| # ...(9)> BAR = 2 (some | |
| # ...(9)> bar) | |
| # ...(9)> FAZ = 3 (some faz) | |
| # ...(9)> """ | |
| # {:ok, ["FOO", 1, "somefoo", "BAR", 2, "somebar", "FAZ", 3, "somefaz"], "\n", |
Requires phx.new, install with mix archive.install hex phx_new
mix phx.new app
Common flags:
A problem with repositories is sometimes you do not remember what commands you ran to bootstrap the application, or what generators were used. A history file similar to .bash_history would be handy for a per-project basis. The h command above provides a wrapper around this functionality. It should be portable across any system with bash.
Run a command and write out the command to the git project's .history file, this logs $@ to .history
$ h mix phx.new project_name
$ h mix deps.get
$ h mix ecto.create
$ cat .history
mix phx.new project_name