Gossip-app is a minimalistic forum made for the CVWO assignment.
- CRUD operations on posts and comments
- User authentication with JWT
- Searching of posts via tags
- User profile pages
- Pagination
- Input validation
The mid and final submission write-ups can be found in the write-up folder.
Frontend
- React.js
- axios
- react query
- moment
- MUI
- Typescript
Backend
- Ruby on Rails (as an API)
- devise-jwt
- faker
- kaminari
- SQLite
generated with https://dbdiagram.io/
This project has 2 submodules.
gossip-app-backend
contains the source code for the backend api.gossip-app-frontend
contains the source code for the frontend.
Use git clone --recursive https://github.com/tituschewxj/gossip-app.git
to clone this repository.
- Navigate to the backend folder.
- Use
bundle install
to install dependencies in the backend. - Use
rails s
to run the backend server on port 3000.
- Navigate to the frontend folder.
- The frontend uses yarn as it's package manager. Use
yarn install
to install dependencies. - Use
yarn run start
to run the frontend server on port 3001.
- Default email:
${username}@email.com
- Default password:
password
- In
devise.rb
, thejwt.expiration_time
is set to 30 minutes.