/journium_render

Journium is a publication platform for coding bootcamps. Whether you're a student or staff, a family member or a friend, or even a pet, you can write and share your stories with the bootcamp community, or read stories from others and comment. Journium is a clone of Medium.

Primary LanguageJavaScript


Logo

Journium

A clone of Medium
Live Link on Heroku »

About The Project

Journium is a clone of Medium, a website for budding developers in bootcamp and others who support them to write about their experience related to bootcamp, share their tips, comment on their stories, like their stories. Access the Journium MVP.

Index

| MVP Feature List | Database Schema |

Technologies Used

Getting started

  1. Clone this repo.

    • git clone git@github.com:adamtang5/aa_mod5_w16_express_react_solo.git
  2. Install dependencies from the root directory.

    • npm install
  3. Create a POSTGRESQL user with CREATEDB and PASSWORD in PSQL.

    • CREATE USER <name> WITH CREATEDB PASSWORD <'password'>
  4. Create a .env file in the backend directory based on the .env.example found within the respective directory.

  5. Enter your username and password information into your .env file along with your desired database name, a secured combination of characters for your JWT_SECRET, and your desired PORT (preferably 5000).

  6. Add the following proxy to your package.json file within your frontend directory, replacing or keeping the 5000 port to match your PORT configuration found in your .env file.

    • "proxy": "http://localhost:5000"
  7. Create Database, Migrate, and Seed models.

    • npx dotenv sequelize db:create
    • npx dotenv sequelize db:migrate
    • npx dotenv sequelize db:seed:all
  8. Start the services in the backend directory.

    • npm start
  9. Start the services in the frontend directory, which should open the project in your default browser. If not, navigate to http://localhost:3000.

    • npm start
  10. You can use the Demo user or create an account to begin using Journium.

Key Features

  • Create new users and have user login with authorization
  • Post, edit, and delete stories/comments owned by the current user
  • User profile page with stories written by the current user
  • Comments page with comments made by the current user
  • Liked stories page with stories liked by the current user
  • Categories that can be assigned to stories

(back to top)

Usage

  • Users can signup and login to use Journium, and can login as a demo user to experience the website quickly.
  • Once logged in, the user is directed to the main stories page, where logged-in users can view a list of stories based on time created. On the left nav bar, there are icons for home, read stories, likes, write a story, and the avatar for user preferences.
  • On the main stories page, a logged in user can like a story, or save a story to reading list.
  • User can edit profile settings on settings page.
  • Logged in users can search stories by one or multiple keywords based on story title and content.

(back to top)

Contact

Adam Tang - GitHub

Project Repo Link: https://github.com/adamtang5/aa_mod5_w16_express_react_solo

Project Link: https://aa-meme-overflow.herokuapp.com/

(back to top)