Skip to content

Commit 27165c3

Browse files
authored
Merge pull request #589 from codeforpdx/Development
Version Update from v0.11.0 to v0.12.0
2 parents 1db5416 + 7fd0342 commit 27165c3

File tree

81 files changed

+3189
-2125
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

81 files changed

+3189
-2125
lines changed

.eslintrc.js

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -10,17 +10,8 @@ module.exports = {
1010
jsx: true
1111
}
1212
},
13-
plugins: [
14-
'react',
15-
'prettier',
16-
'jsdoc'
17-
],
18-
extends: [
19-
'plugin:react/recommended',
20-
'airbnb',
21-
'prettier',
22-
'plugin:jsdoc/recommended'
23-
],
13+
plugins: ['react', 'prettier', 'jsdoc'],
14+
extends: ['plugin:react/recommended', 'airbnb', 'prettier', 'plugin:jsdoc/recommended'],
2415
rules: {
2516
'react/function-component-definition': ['error', { namedComponents: 'arrow-function' }],
2617
'react/prop-types': 'off',

.github/ISSUE_TEMPLATE/bug_report.md

Lines changed: 28 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,38 @@
11
---
22
name: Bug report
3-
about: Create a report to help us improve
4-
title: ''
5-
labels: ''
3+
about: Create a bug report
4+
title: '[Bug Report] - Your Title Here'
5+
labels: 'bug'
66
assignees: ''
7+
78
---
89

9-
### Bug Description:
10-
Please provide a DETAILED description of the bug.
10+
### Describe the bug:
11+
A clear and concise description of what the bug is including error messages.
12+
13+
### Expected behavior:
14+
A clear and concise description of what you expected to happen.
15+
16+
### Actual Behavior:
17+
Describe what actually happened instead of the expected behavior.
1118

12-
### Reproduction Steps:
13-
**1.**
14-
**2.** If needed, delete if not
15-
**3.** If needed, delete if not
19+
### Screenshots:
20+
If applicable, add screenshots to help explain your problem.
1621

17-
### Expected Behavior:
18-
What should have happened if the bug didn't occur.
22+
### To Reproduce:
23+
Steps to reproduce the behavior:
24+
1. Go to '...'
25+
2. Click on '....'
26+
3. Scroll down to '....'
27+
4. See error
1928

20-
### Screenshots (If applicable):
21-
If possible, add screenshots to help explain the problem.
29+
### Desktop (please complete the following information):
30+
- OS: [e.g. iOS]
31+
- Browser [e.g. chrome, safari]
32+
- Version [e.g. 22]
2233

23-
### Additional Context (optional):
24-
Add any other context about the problem here.
34+
### Possible Fix:
35+
If you have a suggestion for how to fix the bug, please provide details here.
2536

26-
### Possible Solution (optional):
27-
If you have a suggestion on how to fix this bug.
37+
### Additional context:
38+
Add any other context about the problem here.
Lines changed: 22 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,34 @@
11
---
22
name: Enhancement request
33
about: Suggest an enhancement for this project
4-
title: 'Enhancement: [Your Title Here]'
4+
title: '[Enhancement] - Your Title Here'
55
labels: enhancement
66
assignees: ''
77
---
88

99
### Describe the Current Behavior/Feature:
10-
Provide a clear and concise description of the current behavior or feature.
11-
12-
### Proposed Behavior/Feature:
13-
A clear and concise description of the enhancement you want.
10+
Describe the enhancement you are proposing. Clarify which existing feature this enhancement relates to, and the specific changes or improvements you want to see.
1411

1512
### Rationale:
16-
Please outline why this enhancement is needed and how it will benefit the project.
13+
How does it improve the current functionality? Discuss any limitations or problems with the existing feature that your suggestion aims to resolve.
14+
15+
### Proposed Changes:
16+
Detail the changes you propose to make to the existing feature. Include:
17+
18+
- Specific modifications or additions to functionality
19+
- User interface alterations, if applicable
20+
- Changes to input/output behavior
21+
- Any adjustments to configurations or settings
22+
23+
### Possible Drawbacks:
24+
Discuss any potential drawbacks or negative impacts this enhancement might have, including:
25+
26+
- Complexity increase
27+
- Potential conflicts with other features or planned developments
28+
- Migration or compatibility issues
1729

18-
### Proposed Implementation (if applicable):
19-
Provide a detailed low level description of how you propose the enhancement should be implemented.
30+
### Alternatives Considered:
31+
Mention any alternative solutions or enhancements you've considered. Why were they not chosen or why are they less desirable than your proposal?
2032

21-
### Additional context:
22-
Add any other context or screenshots about the enhancement request here.
33+
### Additional Context:
34+
Add any other context or screenshots about the enhancement request here.
Lines changed: 10 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,23 @@
11
---
22
name: Feature request
33
about: Suggest an idea for this project
4-
title: ''
5-
labels: ''
4+
title: '[Feature Request] - Your Title Here '
5+
labels: 'new feature'
66
assignees: ''
7+
78
---
89

910
### Feature Description:
10-
Please provide a DETAILED description of the proposed feature.
11+
Briefly describe the feature.
1112

12-
### Use Case:
13-
Explain when and why this feature would be used. Try to include as much detail as possible.
13+
### Problem it Solves:
14+
Describe the problem that this feature would solve. Explain any current workaround and how this will solve it.
1415

1516
### Proposed Solution:
16-
If you have a solution in mind, please outline it here.
17-
18-
### Alternative Solutions:
19-
If there are alternative ways to solve this problem, please list them here.
17+
If you have a specific solution in mind, outline it here. Include as many details as possible about how this feature should work and any considerations that need to be taken into account.
2018

21-
### Screenshots (if applicable):
22-
Include any screenshots that may be helpful.
19+
### Alternatives Considered:
20+
A clear and concise description of any alternative solutions or features you've considered and why they could or could not work.
2321

2422
### Additional Context:
25-
Please provide any other information that might be helpful.
23+
Add any other context or screenshots about the feature request here. If you have mock-ups, prototypes, or any visual aids that could help illustrate the feature, please include them.

.github/workflows/ci.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ jobs:
2323
- name: Setup Node.js
2424
uses: actions/setup-node@v3
2525
with:
26-
node-version: 16
26+
node-version: 18
2727
cache: npm
2828

2929
- name: Build
@@ -47,7 +47,7 @@ jobs:
4747
- name: Setup Node.js
4848
uses: actions/setup-node@v3
4949
with:
50-
node-version: 16
50+
node-version: 18
5151
cache: npm
5252
- name: Install Dependencies
5353
run: npm ci
@@ -67,7 +67,7 @@ jobs:
6767
- name: Setup Node.js
6868
uses: actions/setup-node@v3
6969
with:
70-
node-version: 16
70+
node-version: 18
7171
cache: npm
7272
- name: Install Dependencies
7373
run: npm ci

.nvmrc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
16.20.2
1+
lts/Hydrogen

Dockerfile.react

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# Stage 1: Build the React app
2-
FROM node:16 AS build
2+
FROM node:18 AS build
33

44
WORKDIR /app
55

README.md

Lines changed: 74 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -15,97 +15,117 @@
1515

1616
Welcome! 👋👋🏿👋🏽👋🏻👋🏾👋🏼
1717

18-
PASS is an open source digital wallet for providing home insecure individuals a safe place to store documents within their control. PASS additionally aims to assist caseworkers with processing and providing documents needed to complete the housing assistance application process.
18+
PASS is an open source digital wallet for providing home-insecure individuals a safe place to store documents within their control. PASS additionally aims to assist caseworkers with processing and providing documents needed to complete the housing-assistance application process.
1919

20-
The [PASS wiki](https://github.com/codeforpdx/PASS/wiki) contains detailed information of all things PASS including contribution guidelines, tech stack, information on SOLID, ect...
20+
This document is intended to be a crash course to get you up and running. The [PASS wiki](https://github.com/codeforpdx/PASS/wiki) is the place to go for detailed information of all things PASS including contribution guidelines, tech stack, information on SOLID, etc...
2121

22-
PASS is currently in development working towards MVP release by generous efforts from [our contributors](https://github.com/codeforpdx/PASS/graphs/contributors
23-
).
22+
PASS is currently in development working towards MVP release by generous efforts from [our contributors](https://github.com/codeforpdx/PASS/graphs/contributors).
2423

2524
## Contents
2625

27-
1. [Setup Instructions](#1-setup-instructions)
28-
2. [Project Overview](#2-project-overview)
29-
3. [Contribution Guidelines](#3-contribution-guidelines)
30-
4. [Code of Conduct](#4-code-of-conduct)
26+
1. [Setup Instructions](#1-quick-setup-instructions)
27+
2. [Project Overview](#2-project-overview)
28+
3. [Contribution Guidelines](#3-contribution-guidelines)
29+
4. [Code of Conduct](#4-code-of-conduct)
30+
5. [PASS Wiki](#5-pass-wiki)
3131

32-
## 1. Setup Instructions
32+
## 1. Quick Setup Instructions
3333

34-
- ### Prerequisites
34+
**Note**: All commands in this document are for bash. If you are using an incompatible shell like CMD or powershell, you may need to use different commands.
3535

36-
Currently we require Node version 16.20.2 and NPM for our package manager. We recommend managing node and npm using Node Version Manager (NVM). To do so:
36+
- ### Getting the Code
37+
38+
1. Clone the git repository:
39+
40+
```bash
41+
git clone https://github.com/codeforpdx/PASS.git
42+
```
43+
2. Enter the project folder:
44+
```bash
45+
cd PASS
46+
```
47+
48+
- ### Setting up Node
49+
50+
_If you already have node 18 installed on your system, you may skip this section._
51+
52+
Currently, we require Node version 18.19.x and NPM for our package manager. We recommend using Node Version Manager (NVM) to install Node and npm. To proceed using NVM, perform the following:
3753

3854
1. Download NVM for your system.
3955

40-
- For Mac, Linux, and other POSIX users: https://github.com/nvm-sh/nvm
41-
- For Windows users: https://github.com/coreybutler/nvm-windows
56+
- For Mac, Linux, and other POSIX users: [https://github.com/nvm-sh/nvm](https://github.com/nvm-sh/nvm)
57+
- For Windows users: [https://github.com/coreybutler/nvm-windows](https://github.com/coreybutler/nvm-windows)
4258

43-
2. Install node version 16.20.2:
44-
```
45-
nvm install 16.20.2
46-
```
47-
3. Use that node version:
48-
```
49-
nvm use 16.20.2
50-
```
51-
4. Check that node and npm are set up:
59+
2. If you don't have node version 18, install node version 18 by running:
60+
```bash
61+
nvm install 18
5262
```
63+
This will download node 18 and set it up for use
64+
3. Check that node and npm are set up:
65+
66+
```bash
5367
node -v
54-
npm -v
5568
```
56-
If either of those commands error, node has not been installed correctly.
57-
58-
- ### Clone and Install Dependencies
5969
60-
1. Clone the git repository:
61-
```
62-
git clone https://github.com/codeforpdx/PASS.git
70+
```bash
71+
npm -v
6372
```
64-
2. Install project dependencies:
73+
The node version should be 18.19 (and maybe third decimal) and the npm version should be 10.2 (and maybe a third decimal). If they are not these versions, or if either of those commands cause an error, node has not been installed correctly.
74+
75+
4. We include a `.nvmrc` in the root folder of the project, which contains our target node version. We update this version periodically. If you're ever not sure of what node version you should be using, run
76+
```bash
77+
nvm use
6578
```
79+
to be synced with the project. You may receive warning messages in the terminal if the verion is not installed. Follow the messages to resolve the issues.
80+
81+
- ### Set Up and Run the Project
82+
83+
1. Install project dependencies:
84+
85+
```bash
6686
npm install
6787
```
68-
3. Install the pre-commmit prettier, linter, and test hooks.
69-
```
70-
npm run prepare
71-
```
72-
4. Run the project:
73-
```
74-
npm run dev
75-
```
76-
5. PASS should launch at `http://localhost:5173`. You can now visit that url, and sign into a pod hosted at the OIDC provider of your choice.
7788

78-
- ### Setting up a Development Pod Server
79-
PASS is able to connect to any solid-spec compliant pod server. However, for testing, it's recommended that you run a server locally. PASS provides tools to make this easy to do.
89+
2. Configure the project environment:
90+
```bash
91+
cp env.template .env
92+
```
8093

81-
1. Clone and install dependencies. [See previous section](#clone-and-install-dependencies)
94+
3. Run the following command:
95+
```bash
96+
npm start
97+
```
98+
To start up everything needed to run PASS.
8299

83-
2. In the project's root directory, copy the `env.template` file into a `.env` file. In bash you can use this command:
100+
4. Navigate to PASS and set up an account.
84101

85-
```bash
86-
cp env.template .env
87-
```
102+
By default, PASS launches at [http://localhost:5173](http://localhost:5173) on your local machine. Navigate to that screen, then click the signup button to create a pod and web ID for yourself. Then return to the homepage and log in. Follow all prompts that appear, and you will be up and running with PASS!
88103

89-
3. Run `npm run podserver` to launch the pod server. The server will begin listening on `http://localhost:3000`, and will create a folder in the PASS project folder called `local_temp_server_files`. You can find all server and pod files there.
104+
- ### Setting up Git Hooks for development
90105

91-
4. Open a browser and navigate to `http://localhost:3000`. You should encounter a screen asking you to set up the server and create an account. Create your first account, and your server will be ready for development.
106+
We require all code contributed to the project to pass through our git hooks. To set them up, do the following:
92107

93-
5. Launch PASS with `npm run dev`. Click the `Login` button on the home page. If everything has been set up right, you should be redirected to your local pod server to finish login.
108+
1. Install the pre-commmit prettier and linter hooks.
94109

95-
Note: The `npm run podserver` command will launch a server that stores documents on your local file system. If you don't want to store documents, and want all server data to be deleted on shutdown, you can run `npm run podserver:temp`
110+
```bash
111+
npm run prepare
112+
```
96113

97114
## 2. Project Overview
98115

99-
In Portland, housing insecure individuals struggle to maintain documents often required to receive government and/or non-profit services. With PASS, we are building out an application to enable housing insecure individuals to store their personal documents in decentralized data stores, called Pods. PASS will also provide a platform for Organizations to assist with providing and processing documents required for housing assistance. Using [Solid Data Pods](https://solidproject.org/) individuals will have control over which organizations and applications can access their data. Verified organizations will be able to use PASS to request data from an individual and/or add documents (such as references or invoices) to an individuals pod to help process housing assistance applications.
116+
In Portland, housing-insecure individuals struggle to maintain documents often required to receive government and/or non-profit services. With PASS, we are building out an application to enable housing-insecure individuals to store their personal documents in decentralized data stores, called Pods. PASS will also provide a platform for organizations to assist with providing and processing documents required for housing assistance. Using [Solid Data Pods](https://solidproject.org/) individuals will have control over which organizations and applications can access their data. Verified organizations will be able to use PASS to request data from an individual and/or add documents (such as references or invoices) to an individual's Pod to help process housing assistance applications.
100117
101118
## 3. Contribution Guidelines
102119
103-
- Start by checking out the detailed on-boarding [CONTRIBUTING.md](./docs/CONTRIBUTING.md).
104-
- Join our [Discord](https://discord.gg/Ts923xaUYV) and self assign roles as you see fit. [![Discord](https://img.shields.io/discord/1068260532806766733)](https://discord.gg/Ts923xaUYV)
120+
- Start by checking out the detailed onboarding [in the Wiki](https://github.com/codeforpdx/PASS/wiki/Development#contribution-guidelines).
121+
- Join our [Discord](https://discord.gg/Ts923xaUYV) and self-assign roles as you see fit. [![Discord](https://img.shields.io/discord/1068260532806766733)](https://discord.gg/Ts923xaUYV)
105122
- Request git-hub access on Discord in the [github-access-request](https://discord.com/channels/1068260532806766733/1078124139983945858) channel of the General category.
106123
107124
## 4. Code of Conduct
108125
109-
- [Code for PDX code of conduct](https://github.com/codeforpdx/codeofconduct/blob/master/README.md)
126+
- [CODEPDX code of conduct](https://github.com/codeforpdx/codeofconduct/blob/master/README.md)
127+
128+
## 5. PASS Wiki
129+
[Visit the wiki for more information on every aspect of the project. Feature set, architecture, tooling, etc](https://github.com/codeforpdx/PASS/wiki)
110130
111131
**[⬆️ Back to Top](#pass---personal-access-system-for-services)**

0 commit comments

Comments
 (0)