Table of Contents
Countless pregnant people in America face many uncertainties when it comes to delivering a baby. Over the course of roughly nine months, these pregnant people may endure countless complications that they may not have been prepared to face.
Due to the lack of transparency as well as layman terms within the medical field, many people often rush to take any advice given to them by their doctors. As a result, some individuals undergo treatment that they may not have necessarily needed.
Our Solution: We seek to deliver medical knowledge and the autonomy for people to make the right decision during their prenatal care through a resource website that offers catered information based on birthing preferences.
Look at our Final Presentation to see our progress overview from Fall 2022: Final Presentation
Our Technical Stack Frontend
CMS
Deployment
Please review the following sections to understand how to run this project on your local device. To run properly please make sure you have the most updated version of ReactJS, NodeJS, NPM, and Firebase.
For React you can learn more in the Create React App Documentation
This is an example of how to list things you need to use the software and how to install them.
- npm
$npm install npm@latest -g
How to run the current project on local device:
- Clone the repo
$git clone https://github.com/BU-Spark/se-shared-decision-making.git
- Install NPM packages
$npm install
- Enter the frontend folder in the directory
$cd frontend
$npm start
Runs the frontend from local host Open http://localhost:3000 to view it in the browser. Will update when edits are made.
Other useful npm commands
$npm test
Launches the test runner in the interactive watch mode.
See the section about running tests for more information.
$npm run build
Builds the app for production to the build
folder.
It correctly bundles React in production mode and optimizes the build for the best performance.
The build is minified and the filenames include the hashes.
Your app is ready to be deployed!
See the section about deployment for more information.
$npm run eject
Note: this is a one-way operation. Once you eject
, you can’t go back!
If you aren’t satisfied with the build tool and configuration choices, you can eject
at any time. This command will remove the single build dependency from your project.
Instead, it will copy all the configuration files and the transitive dependencies (webpack, Babel, ESLint, etc) right into your project so you have full control over them. All of the commands except eject
will still work, but they will point to the copied scripts so you can tweak them. At this point you’re on your own.
You don’t have to ever use eject
. The curated feature set is suitable for small and middle deployments, and you shouldn’t feel obligated to use this feature. However we understand that this tool wouldn’t be useful if you couldn’t customize it when you are ready for it.
Brief: Recommend to build and test content locally and deploy to google cloud after everything is set.
To host locally:
$cd new-strapi
$npm install
Create .env file and paste following:
HOST=0.0.0.0 PORT=1337 APP_KEYS=hq5nXeyU/6AUVnkkdHmmqA==,c1W7ivCD+NMYGnpjiLOoMQ==,l2cE5Bfqejdgs//K8Aa7Ag==,ZlqpAcH2lPYYbP8QqTb2bg== API_TOKEN_SALT=WSeDbXcQ7JgJ1tMKGhsIXw== ADMIN_JWT_SECRET=w3fdKjGIQ4m0bJOYQxRBbA== JWT_SECRET=EC1lm5cICpaxnYCl2990Ig==
$npm run develop
To login in: Create your own account and start To deploy: Google App Engine Deployment - Strapi Developer Docs
Strapi Usage
- Build a collection type for each page and create component for sections if needed
- Add page content as entry on corresponding field.
- Be sure to publish the content after it is finished.
- Go Setting-> USERS & PERMISSIONS PLUGIN -> roles -> public to check the corresponding field in order to get the data.
Here is what the final website should look like: Figma Wireframe
For deploying frontend to firebase: To host locally:
$cd frontend
$npm install && npm run start
$cd frontend $npm install && npm run start
To redeploy site and push new changes:
$npm run build
$firebase deploy --only hosting
To redesignate github repo for CI/CD:
$firebase login
$cd frontend
$firebase init
follow prompt for connecting to GitHub
- User Notes App
- My Values Preferences Quiz
- Questions Checklist
- Connected to Strapi
- Completed (minus responsiveness), Home and My Values Page
- Create Notes App
- Fix Quiz array bug (array doesn't reset when page refreshed, repeats values)
- Fix Hosting bug, can only use home page url, if typed in with directory to other pages in browser, site returns a 404 error (however once on main page, site pages are accessible)
- Fix Issue with Strapi parsing issue
- Fix issue with maintaining Strapi data
- Please see Jira for additonal tasks to be completed, please check-in with client to verify these backlog items: Jira Page
See the more detailed open issues to add recommended features, and to log future issues (Quiz and 404 error included).
For future contributions of this project, please first ensure that initial-frontend is merged to main properly before creating new branches.
- Create your Feature Branch (
git checkout -b INSERT commit-name
) - Commit your Changes (
git commit -m 'Insert your commit message, make sure it's detailed'
) - Push to the Branch (
git push origin commit-name
) - Open a Merge Request for Main
Distributed under the GPL-3.0 license. See License for more information.
Here are some helpful resources to kick off the project!