Repository navigation
Spec
This spec define the requirements of the User Offers (UO) application.
The objective of this app is to provide targeted offers to users based on the following demographics:
- Age
- Gender
Users will quickly get any offers the app believes to be relevant to them, preventing users from having to search through them manually.
The app will:
- Let users register
- Provide offers based on their user profile from registration
Users must be able to register with the app with the following fields:
- Username
- First Name
- Last Name
- Birthdate
- Gender
- Password
The users will be stored in the database with hashed passwords.
Users should be able to sign in with their user name and password.
Authenticated users should be taken to an Offers page, where they will be presented with offers targeted to their age and gender.
A page where a user enters their username and password to authenticate them
Lists the offers that are targeted for the currently authenticated user.
A simple web server that supports containerization.
- Ruby and Ruby on Rails (used to develop the app)
- PostgreSQL (stores entities for the app)
- Docker (used to build and deploy the app)
Passwords will be hashed when stored.
All HTTP entry points to the application will have a required security token to ensure that the requests don't harm the app.