Skip to content

Commit 2b588a7

Browse files
authored
Merge pull request #1 from algorithm-visualizer/master
update
2 parents a95b831 + dbec6f4 commit 2b588a7

141 files changed

Lines changed: 12758 additions & 12017 deletions

File tree

Some content is hidden

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

.babelrc

Lines changed: 0 additions & 18 deletions
This file was deleted.

.eslintrc.js

Lines changed: 0 additions & 10 deletions
This file was deleted.

.github/FUNDING.yml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
# These are supported funding model platforms
2+
3+
github: # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2]
4+
patreon: # Replace with a single Patreon username
5+
open_collective: # Replace with a single Open Collective username
6+
ko_fi: # Replace with a single Ko-fi username
7+
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
8+
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
9+
liberapay: # Replace with a single Liberapay username
10+
issuehunt: # Replace with a single IssueHunt username
11+
otechie: # Replace with a single Otechie username
12+
custom: https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=CFS8Y6G3E29UA

.gitignore

Lines changed: 20 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,24 @@
1+
# WebStorm settings
12
/.idea
3+
4+
# dependencies
25
/node_modules
6+
/.pnp
7+
.pnp.js
8+
9+
# testing
10+
/coverage
11+
12+
# production
313
/build
4-
/npm-debug.log
5-
/src/backend/public
14+
15+
# misc
616
.DS_Store
7-
/pm2.config.js
17+
.env.local
18+
.env.development.local
19+
.env.test.local
20+
.env.production.local
21+
22+
npm-debug.log*
23+
yarn-debug.log*
24+
yarn-error.log*

.gitpod.yml

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
tasks:
2+
- init: >
3+
git clone https://github.com/algorithm-visualizer/server.git &&
4+
cd server &&
5+
npm install &&
6+
echo -e "GITHUB_CLIENT_ID=dummy\nGITHUB_CLIENT_SECRET=dummy\nAWS_ACCESS_KEY_ID=dummy\nAWS_SECRET_ACCESS_KEY=dummy" > .env.local &&
7+
cd ..
8+
command: cd server && npm run watch
9+
- init: >
10+
npm install &&
11+
echo 'DANGEROUSLY_DISABLE_HOST_CHECK=true' > .env.local
12+
command: npm start
13+
ports:
14+
- port: 3000
15+
onOpen: notify
16+
- port: 8080
17+
onOpen: ignore

CONTRIBUTING.md

Lines changed: 31 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,10 @@
22

33
> #### Table of Contents
44
> - [Running Locally](#running-locally)
5-
> - [Creating a Pull Request](#creating-a-pull-request)
5+
> - [Running in Gitpod](#running-in-gitpod)
6+
> - [Directory Structure](#directory-structure)
7+
8+
Are you a first-timer in contributing to open source? [These guidelines](https://opensource.guide/how-to-contribute/#how-to-submit-a-contribution) from GitHub might help!
69

710
## Running Locally
811

@@ -13,39 +16,45 @@
1316
```bash
1417
git clone https://github.com/<your-username>/algorithm-visualizer.git
1518
```
19+
20+
3. Choose whether to run [`server`](https://github.com/algorithm-visualizer/server) on your machine or to use the remote server.
21+
- If you choose to run the server locally as well, follow the instructions [here](https://github.com/algorithm-visualizer/server/blob/master/CONTRIBUTING.md#running-locally).
1622

17-
3. Install [Docker](https://docs.docker.com/install/), if not already installed.
23+
- If you choose to use the remote server, **temporarily** (i.e., don't commit this change) modify `package.json` as follows:
24+
```diff
25+
- "proxy": "http://localhost:8080",
26+
+ "proxy": "https://algorithm-visualizer.org",
27+
```
1828
19-
4. Install dependencies, and run the server.
29+
4. Install dependencies, and run the web app.
2030
2131
```bash
2232
cd algorithm-visualizer
2333
2434
npm install
2535
26-
npm run dev
36+
npm start
2737
```
2838
29-
5. Open [`http://localhost:8080/`](http://localhost:8080/) in a web browser.
30-
31-
## Creating a Pull Request
32-
33-
6. Create a branch addressing the issue/improvement you'd like to tackle.
39+
5. Open [`http://localhost:3000/`](http://localhost:3000/) in a web browser.
3440
35-
```bash
36-
git checkout -b my-problem-fixer-branch
37-
```
41+
## Running in Gitpod
3842
39-
7. Write some awesome code.
43+
You can also run `algorithm-visualizer` in Gitpod, a free online dev environment for GitHub.
4044
41-
8. Commit the changes, and push them to `my-problem-fixer-branch` branch on your forked repo.
45+
[![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://github.com/algorithm-visualizer/algorithm-visualizer)
4246
43-
```bash
44-
git add .
45-
46-
git commit -m "Explain my awesome changes"
47-
48-
git push origin my-problem-fixer-branch
49-
```
47+
## Directory Structure
5048
51-
9. Create a pull request from `my-problem-fixer-branch` branch on your forked repo to `master` branch on the main repo.
49+
- [**branding/**](branding) contains representative image files.
50+
- [**public/**](public) contains static files to be served.
51+
- [**src/**](src) contains source code.
52+
- [**apis/**](src/apis) defines outgoing API requests.
53+
- [**common/**](src/common) contains commonly used files.
54+
- [**components/**](src/components) contains UI components.
55+
- [**core/**](src/core) processes visualization.
56+
- [**layouts/**](src/core/layouts) layout tracers.
57+
- [**renderers/**](src/core/renderers) renders visualization data.
58+
- [**tracers/**](src/core/tracers) interprets visualizing commands into visualization data.
59+
- [**files/**](src/files) contains markdown or skeleton files to be shown in the code editor.
60+
- [**reducers/**](src/reducers) contains Redux reducers.

LICENSE

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
MIT License
22

3-
Copyright (c) 2018 Jinseo Jason Park
3+
Copyright (c) 2019 Jinseo Jason Park
44

55
Permission is hereby granted, free of charge, to any person obtaining a copy
66
of this software and associated documentation files (the "Software"), to deal

PROJECT_DETAILS.md

Lines changed: 0 additions & 69 deletions
This file was deleted.

README.md

Lines changed: 7 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -2,30 +2,21 @@
22

33
> Algorithm Visualizer is an interactive online platform that visualizes algorithms from code.
44
5-
[![Gitter](https://img.shields.io/gitter/room/nwjs/nw.js.svg?style=flat-square)](https://gitter.im/algorithm-visualizer)
65
[![GitHub contributors](https://img.shields.io/github/contributors/algorithm-visualizer/algorithm-visualizer.svg?style=flat-square)](https://github.com/algorithm-visualizer/algorithm-visualizer/graphs/contributors)
76
[![GitHub license](https://img.shields.io/github/license/algorithm-visualizer/algorithm-visualizer.svg?style=flat-square)](https://github.com/algorithm-visualizer/algorithm-visualizer/blob/master/LICENSE)
87

9-
Learning algorithms from text and static images is quite boring. There have been many great websites that view animations of various algorithms though, for us being coders, nothing can be more comprehensible than visualizing the actual working code.
8+
Learning an algorithm gets much easier with visualizing it. Don't get what we mean? Check it out:
109

11-
[![Screenshot](https://raw.githubusercontent.com/algorithm-visualizer/algorithm-visualizer/master/branding/screenshot.png)](https://algorithm-visualizer.org/)
10+
[**algorithm-visualizer.org**![Screenshot](https://raw.githubusercontent.com/algorithm-visualizer/algorithm-visualizer/master/branding/screenshot.png)](https://algorithm-visualizer.org/)
1211

1312
## Contributing
1413

15-
If you want to ...
14+
We have multiple repositories under the hood that comprise the website. Take a look at the contributing guidelines in the repository you want to contribute to.
1615

17-
- **Add or improve an algorithm.**
16+
- [**`algorithm-visualizer`**](https://github.com/algorithm-visualizer/algorithm-visualizer) is a web app written in React. It not only contains UI components but also interprets visualizing commands into actual visualizations. Check out [the contributing guidelines](CONTRIBUTING.md).
1817

19-
We have a separate repository for public algorithms. Check out the [contributing guidelines](https://github.com/algorithm-visualizer/algorithms/blob/master/CONTRIBUTING.md) in [`algorithms`](https://github.com/algorithm-visualizer/algorithms) repo.
18+
- [**`server`**](https://github.com/algorithm-visualizer/server) serves the web app and provides APIs that it needs on the fly. (e.g., GitHub sign in, compiling/running code, etc.)
2019

21-
- **Improve the UI.**
20+
- [**`algorithms`**](https://github.com/algorithm-visualizer/algorithms) contains algorithm visualizations shown on the side menu of the website.
2221

23-
Check out the [contributing guidelines](https://github.com/algorithm-visualizer/algorithm-visualizer/blob/master/CONTRIBUTING.md) in this repo. The [directory structure](https://github.com/algorithm-visualizer/algorithm-visualizer/blob/master/PROJECT_DETAILS.md#algorithm-visualizer) might be helpful as well.
24-
25-
- **Revise the specifications of visualization libraries.**
26-
27-
Making changes to the specifications is often followed by updating visualization libraries for every supported language and the affected public algorithms accordingly. It is highly recommended to read the entire [project details](https://github.com/algorithm-visualizer/algorithm-visualizer/blob/master/PROJECT_DETAILS.md) and to raise an issue about your proposal before working on it.
28-
29-
- **Fix issues in a visualization library for a specific langauge.**
30-
31-
Check out the contributing guidelines ([JavaScript](https://github.com/algorithm-visualizer/tracers.js/blob/master/CONTRIBUTING.md), [C++](https://github.com/algorithm-visualizer/tracers.cpp/blob/master/CONTRIBUTING.md), and [Java](https://github.com/algorithm-visualizer/tracers.java/blob/master/CONTRIBUTING.md)) in the repo of the visualization library.
22+
- [**`tracers.*`**](https://github.com/search?q=topic%3Avisualization-library+org%3Aalgorithm-visualizer&type=Repositories) are visualization libraries written in each supported language. The only thing they do is to extract visualizing commands from code.

app/backend.js

Lines changed: 0 additions & 42 deletions
This file was deleted.

0 commit comments

Comments
 (0)