- React
- Tailwind CSS
- Redux
- Spring Boot
- PostgresSQL
Overwatch is a cutting-edge platform connecting users and reviewers for seamless code review experiences. Reviewers can earn through Stripe by reviewing code, managing tasks in Trello-like workspaces, and viewing code directly in the browser. Teams enable collaborative group messaging for enhanced communication. Users can connect with reviewers, request detailed code reviews, and chat directly. Overwatch offers robust features, including notification management, multi-factor authentication, and email alerts for key actions, ensuring a secure and streamlined experience for all.
git clone https://github.com/ianahart/overwatch.git
- cd into the root of the cloned project
- If you have not downloaded postgresql go ahead and do so.
- In the terminal run
psql postgres
and create a database calledoverwatch
and\c overwatch
- in the root of the project, run
mvn clean install
- now cd into the folder labeled frontend and run
npm install
- inside the frontend directory run
npm run dev
- inside the root of the project run
mvn spring-boot:run
More to come.
OverWatch.Demo.mp4
![overwatch_screenshot](https://private-user-images.githubusercontent.com/29121238/340029727-d036be82-0f5d-45e1-b78d-548c11d3fb10.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzg5NTE4MjEsIm5iZiI6MTczODk1MTUyMSwicGF0aCI6Ii8yOTEyMTIzOC8zNDAwMjk3MjctZDAzNmJlODItMGY1ZC00NWUxLWI3OGQtNTQ4YzExZDNmYjEwLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMDclMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjA3VDE4MDUyMVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTZmMGY2YTExODhhNmY4MmJlNzRmYTNiMWRhZTE3MzdkYjk0Mjg2MDc4YzA2YjZmYmFmZDE0YjZhNzczODdlN2UmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.xe3HQ6AR7cQr3aL-cKPOztEJA7qCqK_BDxO1WYXOQEw)
![explore-page](https://private-user-images.githubusercontent.com/29121238/376345227-43c900a8-a887-4cc8-88c9-66f921e5c7e0.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzg5NTE4MjEsIm5iZiI6MTczODk1MTUyMSwicGF0aCI6Ii8yOTEyMTIzOC8zNzYzNDUyMjctNDNjOTAwYTgtYTg4Ny00Y2M4LTg4YzktNjZmOTIxZTVjN2UwLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMDclMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjA3VDE4MDUyMVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWU3OWMyYzI0ZGZmMDQyNzM2ZTk0NWI4ZjViOTBhNWZlZThiODMwZTRjZjFlODAxNWE0ZDUwNTUxYmI4ZWI1ZDgmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.EkqRpAZWiNFTipSgMyfUQ7kgOdnXFpNqOy_6PgixK04)
![explore-single-view](https://private-user-images.githubusercontent.com/29121238/376345299-b48cf039-ebae-4942-9bba-f39f2998ced4.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzg5NTE4MjEsIm5iZiI6MTczODk1MTUyMSwicGF0aCI6Ii8yOTEyMTIzOC8zNzYzNDUyOTktYjQ4Y2YwMzktZWJhZS00OTQyLTliYmEtZjM5ZjI5OThjZWQ0LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMDclMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjA3VDE4MDUyMVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWFmZjllMGMwMzQ0YTg2YjFkMWU1ZTk1OTdjNmQ5ZmZmODhiNTU0ZTU2NDMzM2QwNmRhMmE0MTM0MjkwMDEwYmUmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.rmwKjUeJGzL8EhSOXKxtlPvm55nYVhDVjy8TN4s-mTE)
![main-trello](https://private-user-images.githubusercontent.com/29121238/376345344-f433530c-4672-4ddc-83e7-3bf68dafc28b.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzg5NTE4MjEsIm5iZiI6MTczODk1MTUyMSwicGF0aCI6Ii8yOTEyMTIzOC8zNzYzNDUzNDQtZjQzMzUzMGMtNDY3Mi00ZGRjLTgzZTctM2JmNjhkYWZjMjhiLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMDclMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjA3VDE4MDUyMVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTRmMmFhMmM5OTZhZjg2YmNhMmE1ZjM1ZDcwNjY1MGMzNzg3MGNmNzMwZmI5YTRiNWE0YTgzZmVmMDQ1NTA5NmQmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.kUrVZ4dDDP-CSuACVsxu6XHYn4MQrK1ilx2UU_fcx2w)
![review](https://private-user-images.githubusercontent.com/29121238/376345381-1c9e3fa9-04d4-4fab-a4f8-ded90958c9ac.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzg5NTE4MjEsIm5iZiI6MTczODk1MTUyMSwicGF0aCI6Ii8yOTEyMTIzOC8zNzYzNDUzODEtMWM5ZTNmYTktMDRkNC00ZmFiLWE0ZjgtZGVkOTA5NThjOWFjLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMDclMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjA3VDE4MDUyMVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTRmOTYzODMxMTc5ZTU5MzNhOWQ2NzE0MTBmYzAyMDNlZDlmYmVjNGFlYTAyZjIxZTlmMmUzZjM3ZTkxMTFmNjQmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.keHv7HyFr31FZDpgh6rkFS5E1DrLogpuZs_wg7X88TE)
![trello-options](https://private-user-images.githubusercontent.com/29121238/376345402-a1c764e6-acbd-4d14-a690-5f6f275b12f6.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzg5NTE4MjEsIm5iZiI6MTczODk1MTUyMSwicGF0aCI6Ii8yOTEyMTIzOC8zNzYzNDU0MDItYTFjNzY0ZTYtYWNiZC00ZDE0LWE2OTAtNWY2ZjI3NWIxMmY2LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMDclMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjA3VDE4MDUyMVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTY2YzUyOTcxM2YzYmEyNTdhZDcyNmYyNDQxZmRmZWU2YmQyODkwMjc5ODIzYjAwOGQwZWQ5YjEwMTc5Mzk2NWMmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.EShNAG2ATfgxRODcok8RPFP7wf-CqKaw_QKNLWAVZ48)
As of right now only the Spring Boot API has testing implemented. The frontend in React does not.
- If you have not downloaded postgresql go ahead and do so.
- In the terminal run
psql postgres
and create a database calledoverwatch_test
- in the root of the project, run
mvn clean install
- to run all tests use
mvn test
- To run a test against an individual file, use
mvn test -Dtest="<nameOfFile>"
N/A
This project is covered under MIT License
License Text
Copyright (c) 2024 Ian Hart
Permission is hereby granted, free of charge, to any per�OAson obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
No contributions are being accepted at this time.