D4. User Manual

User Documentation

Our users are members and moderators of the UNC subreddit community who wish to view the post activity and the topics of concern, based on the sentiment of the post, within the subreddit. 

Our users will not need any documentation on how to use the application. The application is easy to use and to visualize each post and its details. Users will be able to see these posts and click on each post for additional details of the post, as well as search for a post that is within the database. 

Admin Documentation

Documentation for setting up the system and maintaining the application will be provided through an easy to follow video tutorial, as well as in the README file within the GitHub repository. The admin, which is our client, will need to know how to clone the repository, as well as run the virtual environment within the backend folder of the project, and install all necessary dependencies. The admin will also be provided database access from Firebase, as well as the Reddit account that is used within creation of the application. The admin will also be provided instructions for using their own Reddit account to create a web application that can be used within the application. 

Final Documentation

  1. First, clone the repository into any directory of your choosing.
  2. After opening up the project, open a terminal within the project directory (/demo) and run this command to go into your the backend directory: cd backend
  3. Once you are in the backend directory, add your local virtual environment to run Python and the Python libraries with this command: python -m venv venv which creates a virtual environment folder.
  4. To activate the virtual environment (make sure you are still in the backend directory), run this command: For Mac: source venv/bin/activate For Windows: venv/Scripts/activate
  5. After activating the virtual environment, you will have to install all of the dependencies for Python. All libraries work within only Python version 3.9. Run this command: pip install fastapi uvicorn praw nltk If the dependencies were not installed after, try running this command: pip3 install fastapi uvicorn praw nltk
  6. Within the same terminal, you will need to run the backend FastAPI server for the subreddit posts to be fetched. Run this command: uvicorn main:app --reload
  7. Once the backend server has began loading, open a new terminal within the project directory (/demo) and navigate to the subreddit-app directory by running: cd subreddit-app
  8. Once you are in the subreddit-app directory (/demo/subreddit-app), you will need to install all of the node packages by running: npm install
  9. After running that command, you are now able to start the frontend of the application by running: npm start

After fully running, the React App will open at localhost:3000, and the FastAPI server will open at http://127.0.0.1:8000/docs