35 Commits

Author SHA1 Message Date
902a22c947
chore(growth): fetch extended data for indicators
All checks were successful
continuous-integration/drone/pr Build is passing
Also, improve module doc.
2024-06-06 22:49:52 +00:00
a8466f0c1d
chore(growth): add documentation and examples
All checks were successful
continuous-integration/drone/pr Build is passing
2024-06-06 20:39:10 +00:00
Joao P Dubas
bb79aa2f3a fix(growth): alias z-score and use if
Some checks failed
continuous-integration/drone/pr Build is failing
2024-06-06 11:34:02 +00:00
500d0e89bb
wip(growth): calculate key metrics for growth
Some checks failed
continuous-integration/drone/pr Build is failing
1. calculate age in days, weeks, and months
2. calculate body mass index for metric and english unities
3. calculate z-score for a given measurement and box-cox parameters (l,
   m, s)
4. calculate centile score for a given measurement and box-cox
   parameters
2024-06-06 01:36:11 +00:00
8be9fa38bb
wip(growth): add fix note on convert/3 method
All checks were successful
continuous-integration/drone/pr Build is passing
2024-06-04 23:56:27 +00:00
9c8e1d20ee
wip(growth): improve data parsing
1. Fetch common data for all indicators
2. Remove headers during merge

Also, re-generate files.
2024-06-04 23:55:03 +00:00
2fedb4ecf0
wip(growth): change from with to case
All checks were successful
continuous-integration/drone/pr Build is passing
2024-06-04 14:36:20 +00:00
58f14c0346
wip(growth): fetch|extract|save indicators from WHO
Initial implementation to fetch growth indicators from WHO.

For now, the system merges the measurements for each gender and age
group in a single `csv` file.

The final solution should do this, saving a `dets` file.
2024-06-04 13:57:32 +00:00
34c3a3e4c2 feat: expose system metrics (#4)
Use prom_ex to expose system metrics to prometheus and create dashboards.

Co-authored-by: Joao P Dubas <joao.dubas@gmail.com>
Reviewed-on: #4
2022-05-03 16:19:39 +00:00
39419f8837 feat (ci): improve configuration (#16)
- Remove unused `github-actions` configuration
- Cache build and deps to make tests faster
- Add lint step

Reviewed-on: #16
2022-04-26 00:01:43 +00:00
410a509faa chore: apply credo suggestions (#3)
Some checks reported errors
continuous-integration/drone/push Build encountered an error
Mainly add module docs and fix some aliases.
2022-04-22 00:49:00 +00:00
Joao P Dubas
f07965afa4 [extra-01] use date_range to represent training period
Adjust graphql training object and input to use date_range type as a
representation for period field.
2021-06-28 13:55:55 +00:00
Joao P Dubas
24a2c516c5 [extra-01] add custom date range graphql type
This type allow graphql to work natively with postgres date range and
reduce the amount of work to convert between representations.
2021-06-28 13:55:37 +00:00
Joao P Dubas
1597d34a2d [extra-01] adjust training query to filter by period 2021-06-28 00:31:44 +00:00
Joao P Dubas
a69b771847 [extra-01] training has a period validity
We move from start/end date to a period date range to represent the
interval where a training take place.

Besides that, new constraints are added to ensure a trainings of a user
can't overlap. These constraints reflect in changeset validation.
2021-06-28 00:31:36 +00:00
Joao P Dubas
da77d81200 [day-05] preload training alongside user
Preload training and exercises when fetching an user and expose this
information in graphql.
2021-06-26 18:08:29 +00:00
Joao P Dubas
5c2c588cca [day-04] expose exercise in graphql 2021-06-26 17:32:35 +00:00
Joao P Dubas
eaac531e0b [day-04] expose training in graphql 2021-06-26 17:31:59 +00:00
Joao P Dubas
d5faec5f65 [day-04] move uuid scalar import to root type
With this change, uuid4 is available to all graphql types.
2021-06-26 17:29:41 +00:00
Joao P Dubas
3c97b33d93 [day-04] configure crudry middleware to handle errors 2021-06-26 17:28:17 +00:00
Joao P Dubas
58c4601203 [day-04] add exercise schema
So a training is a collection of exercises that have a description and a
protocol to be followed.
2021-06-26 17:26:14 +00:00
Joao P Dubas
ea5616addf [day-04] add training schema
With this we can represent a traning program for a user.
2021-06-26 17:25:53 +00:00
Joao P Dubas
96a3e2e9f0 [day-03] add mutation to create user
1. Add input type to receive user details
2. Add resolver to create user
3. Configure mutation in root type
4. Aggregate mutations in schema
2021-06-24 00:25:47 +00:00
Joao P Dubas
a54d29ee61 [day-03] configure router to expose graphql
Expose graphql schema through absinthe plug. Also expose graphiql
interface to make it easier to test graphql schema.
2021-06-24 00:23:34 +00:00
Joao P Dubas
1380b8b2e4 [day-03] create schema to aggregate root fields
Expose root query in graphql schema.
2021-06-24 00:22:12 +00:00
Joao P Dubas
b7cbcbd51f [day-03] create root type to define queries
Expose the query to get a specific user.
2021-06-24 00:20:13 +00:00
Joao P Dubas
289901b0c9 [day-03] create resolver to fetch user
This resolver is required to create a graphql query to get users.
2021-06-24 00:17:53 +00:00
Joao P Dubas
425c3eafc2 [day-03] expose id in user schema
Use uuid custom scalar to represent the user id.
2021-06-24 00:12:17 +00:00
Joao P Dubas
c5612f9398 [day-03] create custom scalar for uuid
Graphql doesn't support uuid natively. So, we must create a custom
scalar to handle this type.
2021-06-24 00:10:17 +00:00
Joao P Dubas
8787973075 [day-03] create user schema
Add user type to represent entity in graphql.
2021-06-24 00:09:54 +00:00
Joao P Dubas
3709cd265a [day-02] add context to create/get a user
Create context module to create and fetch a user.
2021-06-22 23:57:10 +00:00
Joao P Dubas
d578bc6cf3 [day-02] validate user input
Also improve migration to reflect requirements in validation done
through `Ecto.Changeset`.
2021-06-22 23:56:07 +00:00
Joao P Dubas
97af827bc2 [day-02] add user schema and migration
Add elixir struct to represent an user and its corresponding
representation on the database.
2021-06-22 23:55:02 +00:00
Joao P Dubas
fc73f30dd0 [day-01] setup imc calc and route 2021-06-22 01:56:40 +00:00
Joao P Dubas
8658384030 [day-01] phoenix project setup
Create new phoenix project
2021-06-22 01:55:16 +00:00