ad-space
Welcome to Ad Space! Ad Space is an open market for product advertisements. This app offers an easy way for companies to list product ads that can then be claimed and run by advertising agencies.
Features
- All Users can:
- Create an account as either a company or agency
- View a list of all ads that have been posted
- View a product ad and its claim status
- Companies can:
- Create and list a product advertisement
- Edit or Delete any created ads
- View a personal profile page with a list of created ads
- Edit the personal profile as well as any Company specific attributes
- Agencies can:
- Claim any ads that do not yet belong to another Agency
- Unclaim any ads that can then be claimed by another Agency
- View a personal profile page with a list of claimed ads
- Edit the personal profile as well as any Agency specific attributes
Installation
Fork and clone this repository, navigate to the directory that contains this program in your terminal then install the dependencies and migrate the database using
npm install --prefix client
rails db:migrate
Optional
Seed the database to simulate the app with an already-populated database using
rails db:seed
Usage
Open the directory containing this program in two different terminals
One of the terminals will be used to run the rails server in the back end
rails s
While the other will be used to run the front end
npm start --prefix client
In a web browser, navigate to the local host using the http address shown in the front end terminal (http://localhost:4000 by default)
Extras
This app was built during my time with Flatiron School to demonstrate my creative problem solving ability through the creation of a full stack application that uses techniques not taught in the Flatiron Full Stack Engineering curriculum. My research lead me to the use of Delegated Types to manage different types of Users in the backend, a blog post explaining this can be found here