Skip to content

Commit d0a22f0

Browse files
authored
Merge pull request #2 from processing/master
Pull from main
2 parents 6843c2e + c1ab2b3 commit d0a22f0

File tree

282 files changed

+36661
-31657
lines changed

Some content is hidden

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

282 files changed

+36661
-31657
lines changed

.babelrc

Lines changed: 81 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,88 @@
11
{
2-
"presets": ["react", "env", "stage-0"],
2+
"presets": [
3+
"@babel/preset-react",
4+
"@babel/preset-env"
5+
],
36
"env": {
47
"production": {
58
"plugins": [
69
"transform-react-remove-prop-types",
7-
"transform-react-constant-elements",
8-
"transform-react-inline-elements"
10+
"@babel/plugin-transform-react-constant-elements",
11+
"@babel/plugin-transform-react-inline-elements",
12+
"@babel/plugin-syntax-dynamic-import",
13+
"@babel/plugin-syntax-import-meta",
14+
[
15+
"@babel/plugin-proposal-decorators",
16+
{
17+
"legacy": true
18+
}
19+
],
20+
[
21+
"@babel/plugin-proposal-class-properties",
22+
{
23+
"loose": true
24+
}
25+
],
26+
"@babel/plugin-proposal-json-strings",
27+
"@babel/plugin-proposal-function-sent",
28+
"@babel/plugin-proposal-export-namespace-from",
29+
"@babel/plugin-proposal-numeric-separator",
30+
"@babel/plugin-proposal-throw-expressions",
31+
"@babel/plugin-proposal-export-default-from",
32+
"@babel/plugin-proposal-logical-assignment-operators",
33+
"@babel/plugin-proposal-optional-chaining",
34+
[
35+
"@babel/plugin-proposal-pipeline-operator",
36+
{
37+
"proposal": "minimal"
38+
}
39+
],
40+
"@babel/plugin-proposal-nullish-coalescing-operator",
41+
"@babel/plugin-proposal-do-expressions",
42+
"@babel/plugin-proposal-function-bind"
943
],
10-
"presets": ["env", "react", "react-optimize", "stage-0"]
44+
"presets": [
45+
"@babel/preset-env",
46+
"@babel/preset-react"
47+
]
48+
},
49+
"development": {
50+
"plugins": [
51+
"react-hot-loader/babel"
52+
]
1153
}
12-
}
13-
}
54+
},
55+
"plugins": [
56+
"@babel/plugin-syntax-dynamic-import",
57+
"@babel/plugin-syntax-import-meta",
58+
[
59+
"@babel/plugin-proposal-decorators",
60+
{
61+
"legacy": true
62+
}
63+
],
64+
[
65+
"@babel/plugin-proposal-class-properties",
66+
{
67+
"loose": true
68+
}
69+
],
70+
"@babel/plugin-proposal-json-strings",
71+
"@babel/plugin-proposal-function-sent",
72+
"@babel/plugin-proposal-export-namespace-from",
73+
"@babel/plugin-proposal-numeric-separator",
74+
"@babel/plugin-proposal-throw-expressions",
75+
"@babel/plugin-proposal-export-default-from",
76+
"@babel/plugin-proposal-logical-assignment-operators",
77+
"@babel/plugin-proposal-optional-chaining",
78+
[
79+
"@babel/plugin-proposal-pipeline-operator",
80+
{
81+
"proposal": "minimal"
82+
}
83+
],
84+
"@babel/plugin-proposal-nullish-coalescing-operator",
85+
"@babel/plugin-proposal-do-expressions",
86+
"@babel/plugin-proposal-function-bind"
87+
]
88+
}

.env.example

Lines changed: 19 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,28 @@
1-
API_URL=/api
2-
MONGO_URL=mongodb://localhost:27017/p5js-web-editor
3-
PORT=8000
4-
SESSION_SECRET=whatever_you_want_this_to_be_it_only_matters_for_production
1+
API_URL=/editor
52
AWS_ACCESS_KEY=<your-aws-access-key>
6-
AWS_SECRET_KEY=<your-aws-secret-key>
73
AWS_REGION=<your-aws-region>
8-
S3_BUCKET=<your-s3-bucket>
4+
AWS_SECRET_KEY=<your-aws-secret-key>
5+
CORS_ALLOW_LOCALHOST=true
6+
EMAIL_SENDER=<transactional-email-sender>
7+
EMAIL_VERIFY_SECRET_TOKEN=whatever_you_want_this_to_be_it_only_matters_for_production
8+
EXAMPLE_USER_EMAIL=[email protected]
9+
EXAMPLE_USER_PASSWORD=hellop5js
10+
GG_EXAMPLES_USERNAME=generativedesign
11+
GG_EXAMPLES_EMAIL=[email protected]
12+
GG_EXAMPLES_PASS=generativedesign
13+
ML5_EXAMPLES_USERNAME=ml5
14+
ML5_EXAMPLES_EMAIL=[email protected]
15+
ML5_EXAMPLES_PASS=helloml5
916
GITHUB_ID=<your-github-client-id>
1017
GITHUB_SECRET=<your-github-client-secret>
1118
GOOGLE_ID=<your-google-client-id> (use google+ api)
1219
GOOGLE_SECRET=<your-google-client-secret> (use google+ api)
1320
MAILGUN_DOMAIN=<your-mailgun-domain>
1421
MAILGUN_KEY=<your-mailgun-api-key>
15-
EMAIL_SENDER=<transactional-email-sender>
16-
EMAIL_VERIFY_SECRET_TOKEN=whatever_you_want_this_to_be_it_only_matters_for_production
22+
MONGO_URL=mongodb://localhost:27017/p5js-web-editor
23+
PORT=8000
24+
S3_BUCKET=<your-s3-bucket>
1725
S3_BUCKET_URL_BASE=<alt-for-s3-url>
18-
EXAMPLE_USER_EMAIL=[email protected]
19-
EXAMPLE_USER_PASSWORD=hellop5js
20-
GG_EXAMPLES_USERNAME=generative-design
21-
GG_EXAMPLES_PASS=generativedesign
22-
GG_EXAMPLES_EMAIL=[email protected]
26+
SESSION_SECRET=whatever_you_want_this_to_be_it_only_matters_for_production
27+
UI_ACCESS_TOKEN_ENABLED=false
28+
UPLOAD_LIMIT=250000000

.eslintrc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
"env": {
55
"browser": true,
66
"node": true,
7-
"mocha": true
7+
"jest": true
88
},
99
"rules": {
1010
"linebreak-style": 0,
@@ -20,7 +20,7 @@
2020
"no-console": 0,
2121
"no-alert": 0,
2222
"no-underscore-dangle": 0,
23-
"max-len": [1, 120, 2, {ignoreComments: true}],
23+
"max-len": [1, 120, 2, {"ignoreComments": true, "ignoreTemplateLiterals": true}],
2424
"quote-props": [1, "consistent-as-needed"],
2525
"no-unused-vars": [1, {"vars": "local", "args": "none"}],
2626
"consistent-return": ["error", { "treatUndefinedAsUnspecified": true }],

.github/CODE_OF_CONDUCT.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,14 @@
1111

1212
Use your best judgement. If it will possibly make others uncomfortable, do not post it.
1313

14-
* **Be respectful.** Disagreement is not an opportunity to attack someone else's thoughts or opinions. Although views may differ, remember to approach every situation with patience and care.
15-
* **Be considerate.** Think about how your contribution will affect others in the community.
14+
* **Be respectful.** Disagreement is not an opportunity to attack someone else's thoughts or opinions. Although views may differ, remember to approach every situation with patience and care.
15+
* **Be considerate.** Think about how your contribution will affect others in the community.
1616
* **Be open minded.** Embrace new people and new ideas. Our community is continually evolving and we welcome positive change.
1717

1818
If you believe someone is violating the code of conduct, we ask that you report it by emailing [[email protected]](mailto:[email protected]). Please include your name and a description of the incident, and we will get back to you ASAP.
1919

20-
Participants asked to stop any harassing behavior are expected to comply immediately. If a participant engages in harassing behavior, the p5.js Team may take any action they deem appropriate, up to and including expulsion from all p5.js spaces and identification of the participant as a harasser to other p5.js members or the general public.
20+
Participants asked to stop any harassing behavior are expected to comply immediately. If a participant engages in harassing behavior, the p5.js Team may take any action they deem appropriate, up to and including expulsion from all p5.js spaces and identification of the participant as a harasser to other p5.js members or the general public.
2121

2222
## Also
23+
2324
* You can read our [community statement](http://p5js.org/community/) on our website.

.github/CONTRIBUTING.md

Lines changed: 49 additions & 58 deletions
Original file line numberDiff line numberDiff line change
@@ -1,77 +1,68 @@
11
# Contributing to the p5.js Web Editor
22

3-
Hello! We welcome community contributions to the p5.js Web Editor. Contributing takes many forms and doesn't have to be **writing code**, it can be **report bugs**, **proposing new features**, **creating UI/UX designs**, and **updating documentation**.
4-
5-
Here are links to all the sections in this document:
6-
7-
<!-- If you change any of the headings in this document, remember to update the table of contents. -->
8-
9-
- [Code of Conduct](#code-of-conduct)
10-
- [How Can I Contribute ?](#how-can-i-contribute?)
11-
- [First Timers](#first-timers)
12-
- [Want something more challenging](#want-something-more-challenging)
13-
- [Feature Enhancement](#feature-enhancement)
14-
- [Creating a Pull request](#creating-a-pull-request)
15-
- - [Tips](#tips)
3+
Hello! We welcome community contributions to the p5.js Web Editor. Contributing takes many forms and doesn't have to be **writing code**, it can be **reporting bugs**, **proposing new features**, **creating UI/UX designs**, and **updating documentation**.
4+
5+
## Table of Contents
6+
- [Contributing to the p5.js Web Editor](#contributing-to-the-p5js-web-editor)
7+
- [Table of Contents](#table-of-contents)
8+
- [Code of Conduct](#code-of-conduct)
9+
- [How Can I Contribute?](#how-can-i-contribute)
10+
- [First Steps](#first-steps)
11+
- [Good First Issues](#good-first-issues)
12+
- [Good Medium Issues](#good-medium-issues)
13+
- [Project Board](#project-board)
14+
- [Project Ideas](#project-ideas)
15+
- [Issue Search and Tagging](#issue-search-and-tagging)
16+
- [Beginning Work](#beginning-work)
17+
- [Contribution Guides](#contribution-guides)
1618

1719
## Code of Conduct
1820

19-
Please follow the guidelines mentioned at [CODE OF CONDUCT.md](https://github.com/processing/p5.js-web-editor/blob/master/.github/CODE_OF_CONDUCT.md).
21+
Please follow the guidelines in the [Code of Conduct](https://github.com/processing/p5.js-web-editor/blob/master/.github/CODE_OF_CONDUCT.md).
2022

2123
## How Can I Contribute?
24+
If you're new to open source, [read about how to contribute to open source](https://opensource.guide/how-to-contribute/).
2225

23-
### First Timers
24-
For first-time contributors or those who want to start with a small task: [check out our list of good first bugs](https://github.com/processing/p5.js-web-editor/labels/good%20first%20issue). First read the github discussion on that issue and find out if there's currently a person working on that or not. If no one is working on it or if there has was one claimed to but has not been active for a while, ask if it is up for grabs. It's okay to not know how to fix an issue and feel free to ask questions about to approach the problem! We are all just here to learn and make something awesome. Someone from the community would help you out and these are great issues for learning about the web editor, its file structure and its development process.
25-
26-
### Want something more challenging
27-
If you're already familiar with the project or would like take on something a little more challenging, please take a look at the [priority: high](https://github.com/processing/p5.js-web-editor/labels/priority%3Ahigh) issues.
26+
### First Steps
27+
Don't know where to begin? Here are some suggestions to get started:
28+
* Think about what you're hoping to learn by working on open source. The web editor is a full-stack web application, therefore there's tons of different areas to focus on:
29+
- UI/UX design
30+
- Project management: Organizing tickets, pull requests, tasks
31+
- Front end: React/Redux, CSS/Sass, CodeMirror
32+
- Back end: Node, Express, MongoDB, Jest, AWS
33+
- DevOps: Travis CI, Jest, Docker, Kubernetes, AWS
34+
- Documentation
35+
- Translations: Application and documentation
36+
* Use the [p5.js Web Editor](https://editor.p5js.org)! Find a bug? Think of something you think would add to the project? Open an issue.
37+
* Expand an existing issue. Sometimes issues are missing steps to reproduce, or need suggestions for potential solutions. Sometimes they need another voice saying, "this is really important!"
38+
* Try getting the project running locally on your computer by following the [installation steps](./../developer_docs/installation.md).
39+
* Look through the documentation in the [developer docs](../developer_docs/). Is there anything that could be expanded? Is there anything missing?
40+
* Look at the [development guide](./../developer_docs/development.md).
2841

29-
### Feature Enhancement
30-
If you want to work on building new things, please take a look at [type: feature](https://github.com/processing/p5.js-web-editor/labels/type%3Afeature).
42+
### Good First Issues
43+
For first-time contributors or those who want to start with a small task, [check out the list of good first issues](https://github.com/processing/p5.js-web-editor/labels/good%20first%20issue), or [issues that need documentation of steps to reproduce](https://github.com/processing/p5.js-web-editor/issues?q=is%3Aissue+is%3Aopen+label%3A%22needs+steps+to+reproduce%22). If the issue has not been assigned to anyone, then you can work on it! It's okay to not know how to fix an issue, and feel free to ask questions about to approach the problem! We are all here to learn and make something awesome. Someone from the community would help you out and these are great issues for learning about the web editor, its file structure and its development process.
3144

32-
If you'd like to work on a bug, please comment on it to let the maintainers know.
33-
If someone else has already commented and taken up that bug, please refrain from working on it and submitting a PR without asking the maintainers as it leads to unnecessary duplication of effort.
34-
35-
### Contribution guides
36-
37-
* [https://guides.github.com/activities/hello-world/](https://guides.github.com/activities/hello-world/)
38-
* [https://guides.github.com/activities/forking/](https://guides.github.com/activities/forking/)
45+
### Good Medium Issues
46+
If you're looking for a bigger project to take on, look through the issues tagged [good medium issue](https://github.com/processing/p5.js-web-editor/labels/good%20medium%20issue). These issues are self-contained projects that may take longer to work on, but are great if you're looking to get more deeply involved in contributing!
3947

40-
## Writing commit messages
48+
### Project Board
49+
Many issues are related to each other and fall under bigger projects. To get a bigger picture, look at the [All Projects](https://github.com/processing/p5.js-web-editor/projects/4) board.
4150

42-
Good commit messages serve at least three important purposes:
51+
### Project Ideas
52+
If you're looking for inspiration for Google Summer of Code or a bigger project, there's a [project list](https://github.com/processing/processing/wiki/Project-List#p5js-web-editor) maintained on the Processing wiki.
4353

44-
* They speed up the reviewing process.
45-
* They help us write good release notes.
46-
* They help future maintainers understand your change and the reasons behind it.
54+
### Issue Search and Tagging
55+
If you're looking for issues to work on, a good place to start is with tickets labeled [high priority](https://github.com/processing/p5.js-web-editor/labels/priority%3Ahigh). You can also look for tickets that are [feature enhancements](https://github.com/processing/p5.js-web-editor/labels/type%3Afeature), [bug fixes](https://github.com/processing/p5.js-web-editor/labels/type%3Abug), and a few other tags.
4756

48-
Structure your commit message like this:
57+
If you feel like an issue is tagged incorrectly (e.g. it's low priority and you think it should be high), please update the issue!
4958

50-
```
51-
Short (50 chars or less) summary of changes ( involving Fixes #Issue-number keyword )
59+
### Beginning Work
5260

53-
More detailed explanatory text, if necessary. Wrap it to about 72
54-
characters or so. In some contexts, the first line is treated as the
55-
subject of an email and the rest of the text as the body. The blank
56-
line separating the summary from the body is critical (unless you omit
57-
the body entirely); tools like rebase can get confused if you run the
58-
two together.
61+
If you'd like to work on an issue, please comment on it to let the maintainers know, so that they can assign it to you. If someone else has already commented and taken up that issue, please refrain from working on it and submitting a PR without asking the maintainers as it leads to unnecessary duplication of effort.
5962

60-
Further paragraphs come after blank lines.
61-
62-
- Bullet points are okay, too
63-
64-
- Typically a hyphen or asterisk is used for the bullet, preceded by a
65-
single space, with blank lines in between, but conventions vary here
66-
```
67-
68-
* Write the summary line and description of what you have done in the imperative mode, that is as if you were commanding someone. Start the line with "Fix", "Add", "Change" instead of "Fixed", "Added", "Changed".
69-
* Always leave the second line blank.
70-
* Be as descriptive as possible in the description. It helps reasoning about the intention of commits and gives more context about why changes happened.
71-
72-
Tips
73-
----
74-
75-
* If it seems difficult to summarize what your commit does, it may be because it includes several logical changes or bug fixes, and are better split up into several commits using `git add -p`.
63+
Then, look at the [development guide](https://github.com/processing/p5.js-web-editor/blob/master/developer_docs/development.md) for instructions on how to install the project locally and follow the right development workflow.
7664

65+
### Contribution Guides
7766

67+
* [https://guides.github.com/activities/hello-world/](https://guides.github.com/activities/hello-world/)
68+
* [https://guides.github.com/activities/forking/](https://guides.github.com/activities/forking/)

.github/FUNDING.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
custom: https://processingfoundation.org/support

.github/ISSUE_TEMPLATE.md

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,22 @@
11
<!--
22
Hi there! If you are here to report a bug, or to discuss a feature (new or existing), you can use the below template to get started quickly. Fill out all those parts which you're comfortable with, and delete the remaining ones.
3-
4-
To check any option, replace the "[ ]" with a "[x]". Be sure to check out how it looks in the Preview tab!
5-
6-
Feel free to remove any portion of the template that is not relevant for your issue.
73
-->
84

95
#### Nature of issue?
106

11-
- [ ] Found a bug
12-
- [ ] Existing feature enhancement
13-
- [ ] New feature request
7+
<!-- Select any one issue and delete the other two -->
8+
9+
- Found a bug
10+
- Existing feature enhancement
11+
- New feature request
1412

1513
<!-- If you found a bug, the following information might prove to be helpful for us. Simply remove whatever you can't determine/don't know. -->
1614
#### Details about the bug:
1715

1816
- Web browser and version: <!-- On Chrome/FireFox/Opera you can enter "about:" in the address bar to find out the version -->
1917
- Operating System: <!-- Ex: Windows/MacOSX/Linux along with version -->
20-
- Steps to reproduce this:
18+
- Steps to reproduce this bug:
19+
2120
<!-- Include a simple code snippet that demonstrates the problem, along with any console errors produced. If this isn't possible, then simply describe the issue as best you can! Feel free to link to the web editor or include pictures or a video. -->
2221

2322
<!-- If you want to enhance an existing feature, please describe here, otherwise remove this section -->

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
1-
Before your pull request is reviewed and merged, please ensure that:
1+
I have verified that this pull request:
22

3-
* [ ] there are no linting errors -- `npm run lint`
4-
* [ ] your code is in a uniquely-named feature branch and has been rebased on top of the latest master. If you're asked to make more changes, make sure you rebase onto master then too!
5-
* [ ] your pull request is descriptively named and links to an issue number, i.e. `Fixes #123`
6-
7-
Thank you!
3+
* [ ] has no linting errors (`npm run lint`)
4+
* [ ] is from a uniquely-named feature branch and has been rebased on top of the latest master. (If I was asked to make more changes, I have made sure to rebase onto master then too)
5+
* [ ] is descriptively named and links to an issue number, i.e. `Fixes #123`

.github/config.yml

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
# Configuration for welcome - https://github.com/behaviorbot/welcome
2+
3+
# Configuration for new-issue-welcome - https://github.com/behaviorbot/new-issue-welcome
4+
5+
# Comment to be posted to on first time issues
6+
newIssueWelcomeComment: >
7+
Welcome! 👋 Thanks for opening your first issue here! And to ensure the community is able to respond to your issue, be sure to follow the issue template if you haven't already.
8+
9+
# Configuration for new-pr-welcome - https://github.com/behaviorbot/new-pr-welcome
10+
11+
# Comment to be posted to on PRs from first time contributors in your repository
12+
newPRWelcomeComment: >
13+
🎉 Thanks for opening this pull request! Please check out our [contributing guidelines](https://github.com/processing/p5.js-web-editor/blob/master/.github/CONTRIBUTING.md) if you haven't already.
14+
15+
# Configuration for first-pr-merge - https://github.com/behaviorbot/first-pr-merge
16+
17+
# Comment to be posted to on pull requests merged by a first time user

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
.DS_Store
22
.env
33
.env.production
4+
.env.staging
45
.vscode/
56
node_modules/
67
npm-debug.log

0 commit comments

Comments
 (0)