https://github.com/anonrig/bookclub
Private and invite-only book club
https://github.com/anonrig/bookclub
Last synced: about 1 year ago
JSON representation
Private and invite-only book club
- Host: GitHub
- URL: https://github.com/anonrig/bookclub
- Owner: anonrig
- Created: 2022-06-06T15:01:06.000Z (about 4 years ago)
- Default Branch: main
- Last Pushed: 2022-07-20T23:05:06.000Z (almost 4 years ago)
- Last Synced: 2025-04-15T12:52:37.753Z (about 1 year ago)
- Language: TypeScript
- Homepage: https://nizipli.com
- Size: 602 KB
- Stars: 7
- Watchers: 2
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## bookclub
This is a private, invite-only book club to keep track of the books we've read together with features including recommending a book, creating & proposing meetings with agendas.
### Features
- Authentication
- [x] Login with Google
- Users
- [x] Change name and email of an account
- [ ] Access read books, attended sessions
- [ ] Invite other users to the book club
- [x] Books
- [x] List books according to recommendation count
- [x] List books according to recommendation time
- [x] List books according to page count
- [ ] Book recommendation
- [x] Recommend a book
- [x] Comment on a book
- [ ] List people who recommended
- [x] Start reading a book together
- [x] Admins can create a new session
- [x] Members can attend a session
- [x] Members can comment on the active session
- [x] Members can add their page numbers
- [x] Members can see other users progress
- [ ] Meetings
- [ ] Integrate Zoom
- [ ] Send email notifications to active members
- [ ] Keep track of attendance (Yes, Maybe, No)
- [ ] Propose meetings
### Technologies
- Next.js
- Prisma
- TailwindCSS
- Eslint
- pnpm
### Installation
`bookclub` uses pnpm for package dependencies.
```
pnpm install
```
#### Database
`bookclub` uses prisma with planetscale. In order to setup the project initially, follow the [quickstart documentation](https://docs.planetscale.com/tutorials/prisma-quickstart).
- Start PlanetScale connection
```bash
npm run db:dev
```
- If needed, push database changes
```bash
npm run db:push
```
#### Graphql Schemas
`bookclub` uses graphql to communicate.
```bash
npm run generate
```