Initiate elixir app

This commit is contained in:
Adrian Gruntkowski 2024-11-16 19:16:03 +01:00
parent 217d1ee87d
commit 62b80f299c
25 changed files with 106 additions and 3 deletions

4
.formatter.exs Normal file
View file

@ -0,0 +1,4 @@
# Used by "mix format"
[
inputs: ["{mix,.formatter}.exs", "{config,lib,test}/**/*.{ex,exs}"]
]

26
.gitignore vendored Normal file
View file

@ -0,0 +1,26 @@
# The directory Mix will write compiled artifacts to.
/_build/
# If you run "mix test --cover", coverage assets end up here.
/cover/
# The directory Mix downloads your dependencies sources to.
/deps/
# Where third-party dependencies like ExDoc output generated docs.
/doc/
# Ignore .fetch files in case you like to edit your project deps locally.
/.fetch
# If the VM crashes, it generates a dump, let's ignore it too.
erl_crash.dump
# Also ignore archive artifacts (built via "mix archive.build").
*.ez
# Ignore package tarball (built via "mix hex.build").
jenot-*.tar
# Temporary files, for example, from tests.
/tmp/

View file

@ -3,6 +3,3 @@
Yet another go at a note taking app. Task list handling behavior heavily Yet another go at a note taking app. Task list handling behavior heavily
inspired by Google Keep, which is my current daily driver for all kinds inspired by Google Keep, which is my current daily driver for all kinds
of quick notes, shopping lists etc. of quick notes, shopping lists etc.
The idea is to have zero or near zero dependencies for FE code, using only
standard APIs.

18
lib/jenot.ex Normal file
View file

@ -0,0 +1,18 @@
defmodule Jenot do
@moduledoc """
Documentation for `Jenot`.
"""
@doc """
Hello world.
## Examples
iex> Jenot.hello()
:world
"""
def hello do
:world
end
end

20
lib/jenot/application.ex Normal file
View file

@ -0,0 +1,20 @@
defmodule Jenot.Application do
# See https://hexdocs.pm/elixir/Application.html
# for more information on OTP Applications
@moduledoc false
use Application
@impl true
def start(_type, _args) do
children = [
# Starts a worker by calling: Jenot.Worker.start_link(arg)
# {Jenot.Worker, arg}
]
# See https://hexdocs.pm/elixir/Supervisor.html
# for other strategies and supported options
opts = [strategy: :one_for_one, name: Jenot.Supervisor]
Supervisor.start_link(children, opts)
end
end

29
mix.exs Normal file
View file

@ -0,0 +1,29 @@
defmodule Jenot.MixProject do
use Mix.Project
def project do
[
app: :jenot,
version: "0.1.0",
elixir: "~> 1.17",
start_permanent: Mix.env() == :prod,
deps: deps()
]
end
# Run "mix help compile.app" to learn about applications.
def application do
[
extra_applications: [:logger],
mod: {Jenot.Application, []}
]
end
# Run "mix help deps" to learn about dependencies.
defp deps do
[
# {:dep_from_hexpm, "~> 0.3.0"},
# {:dep_from_git, git: "https://github.com/elixir-lang/my_dep.git", tag: "0.1.0"}
]
end
end

View file

Before

Width:  |  Height:  |  Size: 9.6 KiB

After

Width:  |  Height:  |  Size: 9.6 KiB

View file

Before

Width:  |  Height:  |  Size: 31 KiB

After

Width:  |  Height:  |  Size: 31 KiB

View file

Before

Width:  |  Height:  |  Size: 9.1 KiB

After

Width:  |  Height:  |  Size: 9.1 KiB

View file

Before

Width:  |  Height:  |  Size: 577 B

After

Width:  |  Height:  |  Size: 577 B

View file

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

View file

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

8
test/jenot_test.exs Normal file
View file

@ -0,0 +1,8 @@
defmodule JenotTest do
use ExUnit.Case
doctest Jenot
test "greets the world" do
assert Jenot.hello() == :world
end
end

1
test/test_helper.exs Normal file
View file

@ -0,0 +1 @@
ExUnit.start()