Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

React refactor #26

Open
wants to merge 30 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
580357d
React refactor
zimengzhou1 Sep 8, 2022
ae28844
Add text login option
zimengzhou1 Sep 8, 2022
b41f31f
Error handling
zimengzhou1 Sep 14, 2022
d96ca22
update readme
zimengzhou1 Sep 15, 2022
206dfeb
Start config page frontend
zimengzhou1 Sep 15, 2022
3b0a8d4
Can change contact URL
zimengzhou1 Sep 16, 2022
f99583a
store token in postgres database
zimengzhou1 Sep 18, 2022
5f0a981
Can upload ics url
zimengzhou1 Sep 20, 2022
0812782
Orchestrator can convert to rdf, save dummy data to playground
zimengzhou1 Oct 5, 2022
af81f6f
knoodle reads calendar data from pod
zimengzhou1 Oct 7, 2022
0dad081
Cleanup
zimengzhou1 Oct 7, 2022
b6201dd
Availability transform implemented
zimengzhou1 Oct 9, 2022
0e9a639
Update preference UI
zimengzhou1 Oct 16, 2022
1c3c62c
Add user action status notifications
zimengzhou1 Oct 16, 2022
2fb8a61
Search by user webid
zimengzhou1 Oct 16, 2022
0bfbb39
show config status and pod storage patch
zimengzhou1 Oct 17, 2022
f38f149
availability acl to public
zimengzhou1 Oct 26, 2022
acebcde
Login with webid
zimengzhou1 Oct 27, 2022
7e79319
Fix acl bug
zimengzhou1 Oct 27, 2022
7e180b9
Fix acl, add revoke
zimengzhou1 Oct 31, 2022
d3cacbe
Can add friends
zimengzhou1 Oct 31, 2022
a2cf11a
docs: Update README with more initialisation instructions
renyuneyun Nov 21, 2022
068e368
fix: Fix unable to log-in if app is under path
renyuneyun Nov 23, 2022
d6339b8
Merge branch 'fix/login-under-path' into orchestrator
renyuneyun Nov 23, 2022
f42663a
fix: Fix retrieve friends not working due to incorrect parsing
renyuneyun Nov 30, 2022
dc2eab0
fix: Add myself into consideration when checking availability for sch…
renyuneyun Nov 30, 2022
c90b5f9
Renamed KNoodle to Solid Calendar
renyuneyun Dec 6, 2022
efb1586
Merge pull request #1 from renyuneyun/docs/instruction
renyuneyun Dec 7, 2022
d557e36
refactor: Use orchestrator configurer from orchestrator app
renyuneyun Jul 23, 2023
ad86f1d
Update version && README
renyuneyun Jul 23, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions . babelrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
{
"presets": ["next/babel"],
"plugins": []
}
12 changes: 0 additions & 12 deletions .babelrc

This file was deleted.

2 changes: 2 additions & 0 deletions .env
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
// .env
DATABASE_URL="postgres://fdbwujhyoqimnu:75f95e112d4582ad855de9dcd47ba60c7c1908902778c4665ee8f5d24053334d@ec2-52-210-97-223.eu-west-1.compute.amazonaws.com:5432/davbe1hom72g4k"
3 changes: 3 additions & 0 deletions .eslintrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"extends": ["next/babel","next/core-web-vitals"]
}
38 changes: 32 additions & 6 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,6 +1,32 @@
.idea
node_modules
/index.js
/index.js.LICENSE.txt
/index.js.map
/faq.js
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.

# dependencies
/node_modules
/.pnp
.pnp.js

# testing
/coverage

# next.js
/.next/
/out/

# production
/build

# misc
.DS_Store
*.pem

# debug
npm-debug.log*
yarn-debug.log*
yarn-error.log*
.pnpm-debug.log*

# local env files
.env*.local

# vercel
.vercel
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[submodule "import/calendar-orchestrator"]
path = import/calendar-orchestrator
url = https://github.com/renyuneyun/calendar-orchestrator.git
51 changes: 0 additions & 51 deletions CHANGELOG.md

This file was deleted.

50 changes: 36 additions & 14 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,28 +1,50 @@
# 🍜 KNoodle

KNoodle is KNoWS' Solid-based alternative to Doodle.
It allows you to find time slots that work for different people,
KNoodle is KNoWS' (and OxfordHCC's) Solid-based alternative to Doodle. It allows you to find time slots that work for different people,
by using their availability calendar which is made available through a Solid pod.

## Run locally via HTTP server
The configuration and automatic syncing of calendar is handled by the [orchestrator](https://github.com/oxfordhcc/calendar-orchestrator). You may want to read its documentation if new here.

1. Install dependencies via `npm i`.
2. Run production HTTP server via `npm start` (this first runs webpack to generate the browser index.js file), OR
3. Run development HTTP server (that reloads when you make changes) via `npm run watch`
This is a [Next.js](https://nextjs.org/) project bootstrapped with [`create-next-app`](https://github.com/vercel/next.js/tree/canary/packages/create-next-app).

## Local development
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No instructions are present on how the install the Node.js dependencies. I know it's only doing npm i, but it still should be mentioned.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oops, I'll update the readme


You may need to initialise the application first, and then start the development server.

### Clone project and submodules

```
git clone --recurse-submodules https://github.com/OxfordHCC/knoodle.git
```

This command will clone the project and download the submodules automatically.
If you have already cloned the project **but do not** have the submodules, run `git submodule update --init --recursive`.

### Install dependencies

```
npm i
```

### Run development server

```bash
npm run dev
```

Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.

## Suggested changes for your use case

1. Update the variable `employeesUrl` in `js/index.js` to point to your list of people that will use KNoodle.
2. Update the method `fetchParticipantWebIDs` in `js/utils.js` to extract the people from the data that is found at `employeesUrl`.
3. Update the variable `participants` in `js/index.js` to remove the dummy people.
4. Update the generated browser index.js file via `npx webpack`.
1. Update the variable `employeesUrl` in `src/utils/participantsHelper.js` to point to your list of people that will use KNoodle.
2. Update the method `fetchParticipantWebIDs` in `src/utils/participantsHelper.js` to extract the people from the data that is found at `employeesUrl`.
3. Update the variable `participants` in `src/components/Schedule.js` to remove the dummy people.

## Development

- You find all HTML of the application in `index.html`.
- You find the frequently asked questions page in the folder `faq`.
- You find some used libraries in the folder `lib`, most are handled using webpack. To create a development webpack bundle, use `webpack.dev.config.js`.
- You find all custom JavaScript in the folder `js`.
- All of the react components are found under `src/components/` and `src/pages/`
- `src/utils/` contains code for data fetching and manipulation
- `src/data/` contains dummy data for the calendar component which can be ignored

## License

Expand Down
131 changes: 0 additions & 131 deletions faq/index.html

This file was deleted.

1 change: 1 addition & 0 deletions import/calendar-orchestrator
Submodule calendar-orchestrator added at 9cd63a
Loading