Skip to content

Commit abcee11

Browse files
Update README.md
1 parent 14547b9 commit abcee11

File tree

1 file changed

+20
-17
lines changed

1 file changed

+20
-17
lines changed

README.md

Lines changed: 20 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -2,19 +2,25 @@
22

33
EPUB reading experience testing: [epubtest.org](https://epubtest.org)
44

5-
# Tech notes
5+
This is a website and database to record accessibility evaluations of EPUB reading systems.
6+
7+
# For developers
8+
9+
[Developer getting started guide](https://github.com/daisy/epubtest-site/wiki/Developer-getting-started-guide)
10+
11+
## Tech notes
612

713
Back end: Express + nunjucks + graphql queries
814

915
Front end: static HTML + web component enhanced tables
1016

1117
Back end's back end: Postgresql database and a postgraphile db api (graphql)
1218

13-
# Code notes
19+
## Code notes
1420

15-
## `src`
21+
### `src`
1622

17-
### `actions`
23+
#### `actions`
1824

1925
Multipart processes, such as:
2026

@@ -24,15 +30,15 @@ Multipart processes, such as:
2430
* sending email
2531
* an experimental "undo" feature to mimic transactions
2632

27-
### `epub-parser`
33+
#### `epub-parser`
2834

2935
Parse a test book into a JSON structure
3036

31-
### `l10n`
37+
#### `l10n`
3238

3339
Experimental
3440

35-
### `pages`
41+
#### `pages`
3642

3743
Entire front-end
3844

@@ -42,14 +48,11 @@ Entire front-end
4248
* `js`: front-end js, mostly data table stuff
4349
* `templates`: nunjucks templates
4450

45-
### `queries`
46-
47-
GraphQL queries. Some comments:
51+
#### `queries`
4852

49-
* `queries/fragments` contains fields that are collected for each item type. Sometimes there are variants of fieldsets, perhaps to avoid collecting way more data than is required, or sometimes to avoid circular includes.
50-
* `queries/crudGenerator.js` generates basic CRUD operation queries, given a few parameters
53+
GraphQL queries. Of note is `queries/crudGenerator.js`, which generates basic CRUD operation queries, given a few parameters.
5154

52-
### `routes`
55+
#### `routes`
5356

5457
* `admin.js`: GET admin pages
5558
* `admin-forms.js`: POST routes for admin forms
@@ -66,13 +69,13 @@ GraphQL queries. Some comments:
6669
* `utils.js`: Various utility functions
6770
* `displayUtils.js`: Largely redundant display utilities which are often duplicates of front-end js table logic. Used here for creating static noscript tables.
6871

69-
## `test`
72+
### `test`
7073

7174
Workflow tests; run with mocha.
7275

73-
## Caveats, other notes, etc
76+
### Caveats, other notes, etc
7477

75-
### Postgraphile and column-level grant
78+
#### Postgraphile and column-level grant
7679

7780
Postgraphile does not support column-level grants, which is why there is a separate logins vs users table. Otherwise the login information would be theoretically visible to anyone who could view the user information (which, some of it could be viewable, for example, if the user has chosen to get credited for their work, then the results page must display their `creditAs` value, so their credits must be publicly accessible).
7881

@@ -82,7 +85,7 @@ Note that one exception to this lies with the use of "private link" tokens. The
8285

8386
Another exception is the "create temporary token" function, which is right now only called by the server but again, if we ever created a public database endpoint, access to this this should be restricted.
8487

85-
### Authentication
88+
#### Authentication
8689

8790
Token-based authentication
8891

0 commit comments

Comments
 (0)