Skip to content
Merged
Changes from all commits
Commits
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
41 changes: 20 additions & 21 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,26 +1,6 @@
# GoatTimer

Web application that tracks a users study time

## How to Run

Create a backend `.env` file with:

```sh
MONGO_URI=your_mongodb_connection_string
JWT_SECRET=your_long_random_secret
```

On the: npm install
Set `MONGO_URI` in `packages/backend/.env` to your MongoDB Atlas connection string
In one terminal start the backend: npm -w backend run dev
In another terminal: npm -w frontend run dev

The backend defaults to port 5050, and the frontend dev server proxies `/api`
requests there.

For JWT auth, set `JWT_SECRET` in `packages/backend/.env`.
Successful login/signup sets an HttpOnly cookie named `goattimer_jwt`.
For anyone who needs motivation to focus students, professionals, business owners **The Goat Study Timer** is a web app that keeps users accountable by tracking study time. It surfaces other competitors, lets users climb the ranks, and treats focus as a social experience.

# Contributing
- Formatting is default javascript and Prettier styles
Expand All @@ -36,3 +16,22 @@ Successful login/signup sets an HttpOnly cookie named `goattimer_jwt`.
- use the script "npm run dev" to start the service and check for linting errors
- linting errors must be addressed or the service will not run
- ensure no linting errors before pushing code
- ### Development Enviroment
- At root run "npm i" to install all packages
- in `packages/backend/.env`
- Set `MONGO_URI` to the MongoDB Atlas connection string
- For JWT auth, set `JWT_SECRET`
- In one terminal start the backend: npm -w backend run dev
- In another terminal: npm -w frontend run dev
- The backend defaults to port 5050, and the frontend dev server proxies `/api` requests there.

# MISC
### UI Prototype
- https://www.figma.com/design/zncXfoG6arurPuARYN6voh/Goat-Timer?node-id=0-1&p=f&t=D3qkkV7s7rP8OXkM-0
- last updated: 5/29/26

### Class Diagram
- https://lucid.app/lucidchart/b21e47c0-d97b-4f2c-a8d7-765136d80f12/edit?viewport_loc=462%2C-16%2C2012%2C971%2C0_0&invitationId=inv_159c0efd-5942-40aa-9582-62b534aa5c56
- last updated: 5/29/26

Demo Video:
Loading