Skip to content
Merged
Show file tree
Hide file tree
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
13 changes: 8 additions & 5 deletions .env.example
Original file line number Diff line number Diff line change
Expand Up @@ -22,11 +22,11 @@ LOG_DEPRECATIONS_CHANNEL=null
LOG_LEVEL=debug

DB_CONNECTION=sqlite
# DB_HOST=127.0.0.1
# DB_PORT=3306
# DB_DATABASE=computer_science_resources
# DB_USERNAME=root
# DB_PASSWORD=
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=computer_science_resources
DB_USERNAME=root
DB_PASSWORD=

SESSION_DRIVER=database
SESSION_LIFETIME=120
Expand Down Expand Up @@ -64,3 +64,6 @@ AWS_BUCKET=
AWS_USE_PATH_STYLE_ENDPOINT=false

VITE_APP_NAME="${APP_NAME}"

SAIL_XDEBUG_MODE=develop,debug,coverage
SAIL_XDEBUG_CONFIG="discover_client_host=1 client_port=9003"
21 changes: 12 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,26 +6,34 @@

Welcome to the codebase for [ComputerScienceResources.com](https://computerscienceresources.com) — a curated platform for discovering, reviewing, and sharing the best resources in computer science and software engineering.

![Computer Science Logo](public/images/Logo.svg)
<p align="center"><em>This is our mascot, look how studious this little guy is!</em></p>
<p align="center">
<img src="public/images/Logo.svg" alt = "Computer Science Resources Logo"/>
<em>This is our mascot, look how studious this little guy is!</em>
</p>

This website helps developers and learners find high-quality, structured, and community-reviewed resources across all areas of computer science. Our mission is to make learning easier by organizing and highlighting the best content, and to empower the community to contribute, review, and improve resource listings.


## App Features

Here's what you can do on ComputerScienceResources.com — all designed to make your learning journey easier, more fun, and community-driven:
Here's what you can do on ComputerScienceResources.com — all designed to make your learning journey easier:

- **Add New Resources:** Share your favorite computer science and software engineering resources with the world.
- **Upvote & Downvote:** Show your support (or not!) for resources, reviews, and comments. Change your mind? You can always update or remove your vote.
- **Write Reviews:** Leave thoughtful reviews for resources you’ve tried. Each user can post one review per resource, and reviews can be upvoted, commented on, and edited.
- **Comment Anywhere:** Start conversations on resources, reviews, or even other comments. Comments are nested, paginated, and easy to follow — just like your favorite forums.
- **Comment Anywhere:** Start conversations on resources, reviews, or even other comments. Comments are nested, paginated, and easy to follow — just like your favorite forums: Reddit and Hackernews.
- **Suggest Edits:** See something that could be improved? Propose edits to any resource. The community can discuss, vote, and help merge the best changes.
- **Resource Filtering:** Filter resources by name, description, platform, difficulty, pricing, tags, upvotes, review scores, and more — so you always find what you need.
- **Community-Driven:** Everything is built to encourage helpfulness, kindness, and collaboration. Your feedback, reviews, and suggestions shape the site!

We’re always improving and adding new features. If you have ideas or want to help, check out the Contributing section below!

## Contributing

We welcome contributions! Please open issues or pull requests. For suggestions of features, please use the Discussions tab.

Don't be afraid to put up a PR or address any of the open issues in the tabs!

## Getting Started

This project uses [Laravel 11](https://laravel.com/) (PHP 8.2+) as the backend framework, with [Inertia.js](https://inertiajs.com/) and [Vue 3](https://vuejs.org/) for the frontend.
Expand Down Expand Up @@ -179,11 +187,6 @@ Xdebug is pre-configured in the Sail Docker environment for local debugging.
- [Project Roadmap](docs/ROADMAP.md): See the planned phases and milestones for the project.
- [Application Routes & UI Previews](docs/ROUTES.md): Browse all main routes and their associated UI images.

## Contributing

We welcome contributions! Please open issues or pull requests. For suggestions of features, please use the Discussions tab.


## License

This project is open-sourced software licensed under the [MIT license](https://opensource.org/licenses/MIT).
1 change: 0 additions & 1 deletion docs/ROADMAP.md
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,6 @@ This document outlines the planned phases and major milestones for ComputerScien

## Phase 9: Community & Feature Expansion (Ongoing)
**Goal:** Foster community engagement and expand features based on feedback.
- Add Discussions, Bugs, and Feature Request sections
- Enhance moderation and quality control
- Add learning paths, resource lists, and favoriting
- Support for alternative/similar resources, prerequisites, and certifications
Expand Down
32 changes: 23 additions & 9 deletions docs/ROUTES.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,39 +16,53 @@ This document groups the main routes of ComputerScienceResources.com by category

## Resource-Related Routes

- `/` — Home (redirects to resource index)
- ![Home](routes-images/home.png)
- `/` — Resources (redirects to resource index)
- ![Resources](routes-images/resources.png)
- Filter Bar
![Resource Filter Bar](routes-images/resources-filter-bar.png)
- `/about` — About page
- ![About](routes-images/about.png)
- `/resources` — Resource index (list, filter, search)
- ![Resource Index](routes-images/resources-index.png)
- ![About](routes-images/about-us.png)
- `/resources/create` — Create a new resource
- ![Create Resource](routes-images/create-resource.png)
- `/resources/{slug}` — Resource details (reviews, comments, tags)
- ![Resource Details](routes-images/resource-details.png)
- `/resources/{slug}/{tab?}` — Resource details with optional tab (e.g., reviews, comments)
- ![Resource Details Reviews](routes-images/resource-reviews.png)
- ![Resource Details Comments](routes-images/resource-comments.png)
- ![Resource Details Proposed Edits](routes-images/resource-proposed-edits.png)
- `/resource/{slug}/edit/create` — Propose edits to a resource
- ![Edit Resource](routes-images/edit-resource.png)
- ![Edit Resource](routes-images/edits-create.png)
- `/resource/edit/{slug}` — View pending edits for a resource
- ![Pending Edits Split Diff](routes-images/edits-show.png)
- ![Pending Edits Unified View](routes-images/edits-show-diff.png)



## Comment-Related Routes

- `/comments/show/{commentableKey}/{commentableId}/{index}/{paginationLimit?}` — Show paginated comments for a model
- ![Comments](routes-images/comments.png)
- `/comments` — Post a new comment (API)



## Voting Routes

- `/upvote/{typeKey}/{id}` — Upvote a resource, review, or comment (API)
- ![Upvote Example](routes-images/votes-upvote.png)
- `/downvote/{typeKey}/{id}` — Downvote a resource, review, or comment (API)
- ![Downvote Example](routes-images/votes-downvote.png)


## Review Routes

- `/reviews/{computerScienceResource}` — Post or update a review (API)
- ![Write Review](routes-images/create-review.png)



## Other Routes

- `/tags/search/{query}` — API endpoint for searching tags (no UI screenshot)
- `/tags/search/{query}` — API endpoint for searching tags
- ![Tag Search](routes-images/tag-search.png)

---

Expand Down
Binary file added docs/routes-images/about-us.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/routes-images/comments-sorting.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/routes-images/create-resource.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/routes-images/create-review.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/routes-images/edits-create.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/routes-images/edits-show-diff.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/routes-images/edits-show.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/routes-images/resource-comments.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/routes-images/resource-proposed-edits.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/routes-images/resource-reviews.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/routes-images/resources-filter-bar.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/routes-images/resources.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/routes-images/tag-search.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/routes-images/votes-downvote.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/routes-images/votes-upvote.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
Expand Up @@ -102,7 +102,6 @@ const submitReview = async (event) => {
} else {
routeParams.sort_by = "latest";
}
console.log(routeParams);
router.visit(route('resources.show', routeParams));
})
.catch((err) => {
Expand Down