Skip to content

Commit e49864d

Browse files
authored
Merge pull request #59 from sfeir-open-source/v0.2
v0.2
2 parents 1d48641 + d175f63 commit e49864d

File tree

188 files changed

+19153
-10795
lines changed

Some content is hidden

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

188 files changed

+19153
-10795
lines changed

.babelrc

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,8 @@
99
"@event-bus": "./src/common/event-bus",
1010
"@helpers": "./src/common/helpers",
1111
"@client": "./src/client",
12-
"@server": "./src/server"
12+
"@server": "./src/server",
13+
"@config": "./config"
1314
}
1415
}
1516
]

.eslintignore

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
11
node_modules/
22
dist/
3-
showcase/
3+
showcase/
4+
docs-dist/
5+
docs-sources/

.gitignore

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -50,8 +50,11 @@ dist
5050
Thumbs.db
5151

5252
# Slide show example
53-
showcase/reveal/node_modules/
54-
showcase/assets/slave
53+
showcase/resources/slave/
5554

5655
# Parcel
57-
.cache
56+
.cache
57+
58+
# Documentation
59+
docs-dist
60+
docs-sources/developers/code/parts/

.prettierignore

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,6 @@ node_modules/
22
package-lock.json
33
dist/
44
coverage/
5-
showcase/
5+
showcase/
6+
docs/
7+
docs-sources/

CONTRIBUTING.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@
77
88
There are two primary ways to help:
99

10-
- Using the issue tracker, and
11-
- Changing the code-base.
10+
- Using the issue tracker
11+
- Changing the code-base
1212

1313
## Using the issue tracker
1414

README.md

Lines changed: 24 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -1,72 +1,41 @@
1-
# Talk Control
2-
3-
## Description
1+
# TalkControl
42

53
This project aims to make speakers' life easier by supplying an app to remotely control their slideshow.
64

7-
It is composed by three main parts:
8-
9-
- **Server** : it's the backend part of the app.
10-
11-
It has 2 purposes :
12-
13-
- It receives and send events to master(s)
14-
- It stores the state of the app : slide number, etc...
15-
16-
Its job is to work as the **single source of truth** for the app.
17-
18-
- **Master** : the master is a set of views for the speaker.
19-
20-
To control the talk, the master is the bridge between the slave(s) and the server.
21-
It displays the slave(s) and listens for speaker events (key pressed, etc...), and send them to the server.
22-
There are multiple master views, like :
23-
24-
- The stage view : it displays the talk in an iframe in fullscreen
25-
- The presenter view : it displays the current slide, the next one, the timer and the notes
26-
27-
- **Slave** : the slave is a technical component added to a view (for example : the slideshow, the timer, etc...) to update it from events sent by the server or the master.
28-
29-
### Technology stack
30-
31-
This app is written in plain javascript, tested with mocha and chai and bundled with parcelJs.
32-
33-
### Status
5+
## Getting started
346

35-
Currently, this app is still in initial developpement phase.
7+
```bash
8+
npm i
9+
npm start
3610

37-
## Dependencies
11+
# Then open a browser and go to url: http://localhost:1234/
12+
```
3813

39-
For this to work you need to have Node.js v8 or more installed on your computer.
14+
## Documentation
4015

41-
## Usage
16+
The documentation of this project can be generated with the following commands :
4217

43-
Firstly install the dependencies
18+
```bash
19+
npm i # if not already done previously
20+
npm run jsdoc:build # build code documentation with JSDoc
21+
npm run docs:dev # build global documentation with vuepress
4422

45-
```sh
46-
npm i
23+
# Then open a browser and go to url: http://localhost:8080/
4724
```
4825

49-
Then run the project
26+
## Help us
5027

51-
```sh
52-
npm start
53-
```
28+
Feel free to add any issue that you might find useful to improve the project and even submit pull requests to help us :).
5429

55-
Now you just need to open your browser on localhost:1234.
30+
You can go check our [issues page](https://github.com/sfeir-open-source/talk-control/issues)
5631

57-
## How to test the software
32+
General instructions on _how to contribute_ can be found in the [CONTRIBUTING](CONTRIBUTING.md) file.
5833

59-
Run tests
34+
## Troubleshoot
6035

61-
```sh
62-
npm test
63-
```
64-
65-
## Getting help
66-
67-
Feel free to add any issue that you might find useful to improve the project and even propose pull request to help us :).
68-
You can go check our [issues page]('https://github.com/sfeir-open-source/talk-control/issues')
36+
In case of `Error: listen EADDRINUSE :::3000`, execute:
6937

70-
## Getting involved
71-
72-
General instructions on _how_ can be found in the [CONTRIBUTING](CONTRIBUTING.md) file.
38+
```bash
39+
lsof -i :3000
40+
kill -9 <PID>
41+
```

config/config.json

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
{
2+
"tcServer": {
3+
"url": "http://localhost:3000"
4+
},
5+
"tcSlave": {
6+
"keysBlocked": ["ArrowDown", "ArrowUp", "ArrowLeft", "ArrowRight", "Space"]
7+
}
8+
}

docs-sources/.vuepress/config.js

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
module.exports = {
2+
title: 'TalkControl',
3+
description: 'TalkControl documentation',
4+
base: '/',
5+
themeConfig: {
6+
nav: [
7+
{ text: 'User guide', link: '/users/'},
8+
{ text: 'Developer guide', link: '/developers/'},
9+
{ text: 'JsDoc', link: '/developers/code/' },
10+
],
11+
editLinks: true,
12+
sidebarDepth: 1,
13+
docsDir: "code/parts",
14+
}
15+
}

docs-sources/README.md

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
# Talk Control
2+
Welcome on TalkControl documentation. You can find a technical documentation [here](/developers/), instructions on how to use it [here](/users/) and a JsDoc [here](/developers/code/).
3+
4+
## Description
5+
6+
This project aims to make speakers' life easier by supplying an app to remotely control their slideshow.
7+
8+
It is composed by three main parts:
9+
10+
- **Server** : it's the backend part of the app.
11+
12+
It has 2 purposes :
13+
14+
- It receives and send events to master(s)
15+
- It stores the state of the app : slide number, etc...
16+
17+
Its job is to work as the **single source of truth** for the app.
18+
19+
- **Master** : the master is a set of views for the speaker.
20+
21+
To control the talk, the master is the bridge between the slave(s) and the server.
22+
It displays the slave(s) and listens for speaker events (key pressed, etc...), and send them to the server.
23+
There are multiple master views, like :
24+
25+
- The stage view : it displays the talk in an iframe in fullscreen
26+
- The presenter view : it displays the current slide, the next one, the timer and the notes
27+
28+
- **Slave** : the slave is a technical component added to a view (for example : the slideshow, the timer, etc...) to update it from events sent by the server or the master.
29+
30+
### Technology stack
31+
32+
This app is written in plain javascript, tested with mocha and chai and bundled with parcelJs.
33+
34+
### Status
35+
36+
Currently, this app is still in initial developpement phase.
37+
38+
## Dependencies
39+
40+
For this to work you need to have Node.js v8 or more installed on your computer.
41+
42+
## Usage
43+
44+
First, install the dependencies
45+
46+
```sh
47+
npm i
48+
```
49+
50+
Then run the project
51+
52+
```sh
53+
npm start
54+
```
55+
56+
Now you just need to open your browser on localhost:1234.
57+
58+
## How to test the software
59+
60+
Run tests
61+
62+
```sh
63+
npm test
64+
```
40.1 KB
Loading

0 commit comments

Comments
 (0)