Skip to content

ripple0328/gatherly

Repository files navigation

Gatherly

CI codecov Built with Devbox

Gatherly is an application that allow coordinate party like activities.

Planned Features

  • Coordinate People's Calendars and Availability
  • Online Status Tracking and Chatting
  • Route Planning based on location and arrive time
  • Coordinate Items Might Bring and Track Amount By Category
  • Member Requests for Items
  • Forming Reusable Templates

Getting Started

These instructions will guide you on how start the app locally for development

Prerequist

  • 1password cli for secret env management
  • direnv
  • devbox

Setup Once off

  1. init db and create user
direnv allow
initdb
devbox run db
createdb $USER
  1. create role postgres
$ psql
# CREATE USER postgres SUPERUSER;
# \q
  1. install npm packages
debox run npm_install
  1. setup DB for this app
devbox run setup
  1. app using google oauth, so need app id and secret, you can create it from google cloud console
set secrets to mac keyvaults, direnv will populate that to local session
```bash
envchain -s gatherly GOOGLE_CLIENT_ID
envchain -s gatherly GOOGLE_CLIENT_SECRET

Dev flow

  1. start db and server
devbox run postgres
devbox run start

Accessing it via http://localhost:4000 Access telemetry dashboard at http://localhost:4000/metrics Access with NativeApp via LVN go App on http://localost:4000/

  1. Run tests
devbox run test
  1. format code
devbox run format

Apple Apps

open project in xcode

open native/apple/ios/Gatherly.xcodeproj

give it time for initial dependency download and indexing

run the app in simulator with |> button

Trouble shooting

delete migration records

devbox run remote
alias Gatherly.Repo
table_name = "schema_migrations"

# Construct the query to delete all records
import Ecto.Query, only: [from: 1]
query = from(u in table_name)

# Execute the deletion with error handling
try do
  Repo.delete_all(query)
rescue
  e in Ecto.QueryError -> IO.puts("Query Error: #{e.message}")
  e in Postgrex.Error -> IO.puts("Postgrex Error: #{e.message}")
  e in DBConnection.ConnectionError -> IO.puts("Connection Error: #{e.message}")
end

About

No description, website, or topics provided.

Resources

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published