Damitwhy / NA-Share

Sharing is caring...
MIT License
1 stars 2 forks source link

NA-SHARE

A Narcotics Anonymous Inspired - Sharing Community.

Am I Responsive Image.
Here is a table of contents for your document:

Table of Contents

  1. Overview
  2. User Experience Design (UX)
  3. Agile - Workflow - Kanban Board
  4. Usage
  5. Features
  6. Features Left to Implement
  7. Testing
  8. Bugs & Fixes
  9. Installation on your IDE locally
  10. Database Configuration
  11. Deployment to Heroku using the Heroku CLI
  12. Deployment to Heroku using the Heroku Web UI
  13. NA-Share's current deployment links
  14. Technologies Used
  15. Credits

Overview

Project to create a Django social platform for members of Narcotics Anonymous (NA) and all those effected by addiction.
Service users can post their stories as 'shares' so as to share their experiences and comment on other user 'shares' in a supportive environment, message other users or comment on comments. with full C.R.U.D functionality to Create, Read, Update and Delete shares and comments, admin will approve posts.
The NA-Share project hopes to utilize the same benefits found in the process of sharing found at Narcotics Anonymous meetings, to create a cathartic experience for users, allowing them to express and share their emotions freely, leading to a sense of relief and connection.

User Experience Design (UX)

ERD Diagram

Agile - Workflow - Kanban Board.

Usage

Features

Features Left to Implement

Testing

Table of testing

Feature Test Case Description Expected Outcome Actual Outcome Status
JavaScript Validation Validate script.js via https://www.site24x7.com/tools/javascript-validator.html No errors or warnings No errors or warnings Pass
Register Test user registration functionality User should be able to register successfully User registered successfully Pass
Share Test Create, Read, Edit, and Delete functionality for shares All CRUD operations should work as expected All CRUD operations worked as expected Pass
Comment Test Create, Read, Edit, and Delete functionality for comments All CRUD operations should work as expected All CRUD operations worked as expected Pass
Comment on Comment Test Create, Read, Edit, and Delete functionality for comments on comments All CRUD operations should work as expected All CRUD operations worked as expected Pass
URLs Test views for all URLs No complications or hangs on opening pages, full functionality noted No complications or hangs, full functionality noted Pass
Security Test non-authenticated user editing, deletion, creation for all CRUD calls to action Non-authenticated users should not be able to perform CRUD operations Non-authenticated users were unable to perform CRUD operations Pass
Admin Page Access Test middleware to stop access to /admin page Non-authenticated users should receive a 403 forbidden access response Non-authenticated users received a 403 forbidden access response Pass
Browser Compatibility Run all CRUD type tests on Google Chrome All CRUD operations should work as expected All CRUD operations worked as expected Pass

Bugs & Fixes

Installation on your IDE locally

If you're using GitPod your GitPod local environment will be installed automatically, follow these steps to install a local environment to run python and install dependencies.

  1. Clone this Repository:

    • Create a new repository by cloning this NA-Share GitHub repository:
      git clone https://github.com/Damitwhy/NA-Share.git
  2. Open in VSCode:

    • Open your new repository in VSCode desktop with the GitHub desktop app or manually open the folder in VSCode.
  3. Create and Activate Virtual Environment:

    • Create a virtual environment (venv) if it's not already created:
      python3 -m venv venv
    • Activate the virtual environment:
      • Windows:
        .\venv\Scripts\activate
      • macOS/Linux:
        source venv/bin/activate
  4. Install Dependencies:

    • Install all dependencies from the requirements.txt :
      pip install -r requirements.txt
  5. Run the Server:

    • Run the server to see the Django opening page:
      python manage.py runserver
  6. Set DEBUG to False for Deployment:

    • Remember always to set DEBUG to False in settings.py before deploying. Hint sites like Heroku are great for testing your deployments.
  7. Handle Migrations:

    • There tends to be a warning that no migrations have been made when you first run the server, but this doesn't stop the Django page from loading up. I've normally waited to migrate until I've started to fill the models.py file with the ERD model that I require moving forward.
    • You will be ready to migrate when you've set up your default database. See the Database Configuration section. When that is done, you can move on to migrations using the following commands:
      • To create migrations:
        python manage.py makemigrations
      • To apply migrations:
        python manage.py migrate

Database Configuration:

Additional Notes

These instructions should help you set up the project in your IDE correctly.

Deployment to Heroku using the Heroku CLI

Congratulations you have deployed to Heroku using the commandline interface or terminal window.

Deployment to Heroku using the Heroku Web UI

Congratulations if all went well then you've now deployed to Heroku by using the online Heroku dashboard UI.

NA-Share's current deployment links:

Technologies Used

Credits

Contributing

I welcome contributions! To the NA-Share project.

License

This project is licensed under the MIT License. See the LICENSE file for more information. MIT

Contact

For any questions or suggestions, please open an issue or contact Ken at damitwhy01@gmail.com


Note: This project is inspired by the principles of Narcotics Anonymous and aims to provide a safe and supportive online community for its members.