- This is an online community site for plant lovers. The users can connect with other plant enthusiasts, trade plants, and share information. The site have an ads, displaying existing plant listings and users should be able to log in, view detailed listings, leave comments, and create their own listings.
AS a plant lover,
I WANT an online community site,
SO THAT I can connect and trade with others in my community.
GIVEN a blog style site
WHEN I visit the site for the first time
THEN I am presented with the homepage, which includes existing 'plant listing' posts that have been posted; and the option to log in
WHEN I view the homepage listings i can easily see the post name, description, and the category of the listing; SWAP, WANTED or FREE
WHEN I click on an existing plant listing
THEN I am presented with the post title, contents, post creator’s username, and date created for that post and have the option to leave a comment and connect with the trader
WHEN I click on any other links in the navigation
THEN I am prompted to sign in; if i do not have a user name im prompted to sign up
WHEN I choose to sign up
THEN I am prompted to create a username and password
WHEN I click on the sign-up button
THEN my user credentials are saved and I am logged into the site
WHEN I revisit the site at a later time and choose to sign in
THEN I am prompted to enter my username and password
WHEN I am signed in to the site
THEN I am taken to my profile and presented with any 'plant listings' I have already created and the option to add a new listing
WHEN I fill out the form to add a new listing
THEN I am prompted to enter both a title, type and description for my listing
WHEN I fill out the form to create a new listing
THEN the title,type and contents of my post are saved and I am taken back to an updated profile page with my new listing
WHEN I click on one of my existing posts in the dashboard
THEN I am able to delete or update my post and taken back to an updated dashboard
WHEN I click on any existing listing I can enter a comment to connect with the owner of the listing
WHEN I enter a comment and click on the submit button while signed in
THEN the comment is saved and the post is updated to display the comment, the comment creator’s username, and the date created
WHEN I click on the logout option in the navigation
THEN I am signed out of the site
WHEN I am idle on the site for more than a set time
THEN I am able to view listings and comments but I am prompted to log in again before I can add, update, or delete listings
THEN I see navigation links for the homepage, the dashboard, and the option to log out
WHEN I click on the homepage option in the navigation
THEN I am taken to the homepage and presented with existing blog posts that include the post title and the date created
- HTML
- Tailwind CSS
- Javascript
- Node.js
- MySQL
- Dotenv
- Sequelize
- Express
- Handlebars
- Passport npm - chosen library that haven't discussed in the class
- Navigate to this repository.
- Open your terminal on your local machine to fork or copy the repository.
- To install the package dependencies, run the following command in the terminal.
npm i
- Create an .env file to insure the root directory of the application. Once done, fill up the following information needed for security purposes:
DB_NAME='your custom database name' DB_PASSWORD='your MySQL password' DB_USER='your MYSQL username''
- Run the command to open the mysql shell:
mysql -u root -p
- Enter your secured password as the terminal will prompt this question.
- Then run this command to create and present the database:
source schema.sql;
- To create the tables and its relationships to the application, run this step:
npm run seed
- Open the server file to run this command from the application root directory
npm run start
-
Login - users can login, signup or login using their Facebook
-
Your Plants - once you are a member, you have your own page to see your posts.
-
Added Swap - as you can see it is presented what the user added. The user can edit the ad as well.
-
Created Swap - it is now posted on the user's page the created swap to her page
-
Comment Section - users can interact the swap concept by adding their comments
- Github Repository: - https://github.com/jnaoroji/Bloom_and_Barter
- Heroku Deployment: - https://bloom-and-barter-3911749eadd3.herokuapp.com
- Contributions to this project won't be accepted as this is the reflection of the author's work hence the following questions and answers. Furthermore, forking or creating a pull request is acceptable.
- This project is under MIT license.
- For more questions or inquiries, please contact the authors at Github.