Skip to content

API for discovering mobile food facilities written in Elixir using Phoenix & Ecto.

License

Notifications You must be signed in to change notification settings

tditirro/mobile_food_service

Repository files navigation

MobileFoodService

API for discovering mobile food facilities written in Elixir using Phoenix Framework and Ecto.

Quickstart

To start your Phoenix server

  • Install dependencies with mix deps.get
  • View dependency tree with mix deps.tree
  • View outdated dependencies with mix hex.outdated
  • Create and migrate your database with mix ecto.setup N/A since Ecto is not being used with a database.
  • Start Phoenix endpoint with mix phx.server or inside IEx with iex -S mix phx.server

Run mix phx.routes to view all routes available.

Now you can visit localhost:4000/api/v1/facilities/ from your browser to access the API.

View the Phoenix Live Dashboard from your browser.

Ready to run in production? Please check our deployment guides.

Overview

This example is used to illustrate an application written in Elixir using Phoenix and Ecto (with a databases-less schema).

Ecto is used to demonstrate schema and changeset usage and validation while not requiring a database. The Repo in this case is actually an external Mobile Food Facility Permit API, but a database could easily be integrated.

Examples

Search by Text

Search by Location

Search by Text and Location

Learn more

TODO

  • Cleanup auto-generated views, tests, fixtures, ecto, etc.
  • Add health check
  • Add distance to location-baseed search results
  • Add tests
  • Use a database and/or cache (Redis, :ets)
  • Filter on status: "APPROVED" only?
  • Add Dockerfile and entrypoint.sh
  • Make MobileFoodService.MobileFoodFacilities.FacilityType more generic for other name/value pairs of data and resources like names, food items, cities, etc.

About

API for discovering mobile food facilities written in Elixir using Phoenix & Ecto.

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages