Schema - 12Starlight/Godsend GitHub Wiki

users

Column name Data type Details
id integer not null, primary key
first_name string not null, indexed
last_name string not null, indexed
username string not null, indexed, unique
email string not null, indexed, unique
password_digest string not null
session_token string not null, indexed, unique
created_at datetime not null
updated_at datetime not null
  • index on first_name
  • index on last_name
  • index on username, unique: true
  • index on email, unique: true
  • index on session_token, unique: true

 

watchlists

Column Name Data type Details
id integer not null, primary key
godsend_id integer not null, indexed
securities_id integer not null, indexed
created_at datetime not null
updated_at datetime not null
  • godsend_id references users
  • index on godsend_id
  • index on sequrities_id

 

securities

Column Name Data type Details
id integer not null, primary key
ticker string not null, indexed, unique
company string not null, indexed, unique
previous_close integer not null, indexed
bid_price integer not null, indexed
ask_price integer not null, indexed
pe_ratio integer not null, indexed
week_52_high integer not null, indexed
week_52_low integer not null, indexed
created_at datetime not null
updated_at datetime not null
  • index on title

 

trades

Column Name Data type Details
id integer not null, primary key
security_id integer not null, indexed, unique
godsend_id integer not null, indexed, unique
buy boolean not null, indexed, unique
sell boolean not null, indexed, unique
price integer not null, indexed, unique
no_shares integer not null, indexed, unique
created_at datetime not null
updated_at datetime not null
  • index on godsend_id
  • index on stock_id