tyaga001 / devtoolsacademy

everything about awesome developer tools
https://www.devtoolsacademy.com/
Creative Commons Zero v1.0 Universal
38 stars 10 forks source link

Feature/tools card #39

Open Ankur1493 opened 6 days ago

Ankur1493 commented 6 days ago

Features Added

-- Tools card added -- loading skeletons added -- Added a tool details page, needs improvement and need to add more details to db -- Added pagination

Demo

Screencast from 22-11-24 09:01:08 PM IST.webm

Summary by CodeRabbit

Release Notes

coderabbitai[bot] commented 6 days ago

Walkthrough

The changes in this pull request introduce a new JSON configuration file (components.json) that outlines various settings for a React application, including support for TypeScript and Tailwind CSS. Additionally, a new SQL migration file is added to create a Tool table in the database, along with corresponding Prisma schema updates. Multiple new React components are implemented for displaying tools, loading states, and pagination, enhancing the user interface. The changes also introduce new utility functions and interfaces for managing tool data, ensuring a structured approach to tool-related functionalities.

Changes

File Path Change Summary
components.json New configuration file added defining schema, styles, RSC, TSX support, Tailwind config, and aliases.
prisma/migrations/20241119120057_tool_temp_added/migration.sql New SQL migration creating Tool table with various columns and indexes.
prisma/schema.prisma New Tool model added with fields and indexes for database operations.
src/app/api/tools/route.ts New async GET function for retrieving a paginated list of tools.
src/app/tools/[slug]/loading.tsx New Loading component for displaying loading state.
src/app/tools/[slug]/page.tsx New component for displaying tool details based on a slug.
src/app/tools/loading.tsx New full-screen loading spinner component.
src/app/tools/page.tsx New tools page component with pagination support.
src/components/tools/ToolCard.tsx New ToolCard component for displaying individual tool information.
src/components/tools/ToolSkeleton.tsx New ToolSkeleton component for loading placeholders.
src/components/tools/ToolsPage.tsx New ToolsPage component for displaying a list of tools with pagination.
src/components/tools/ToolsPagination.tsx New ToolsPagination component for handling pagination.
src/components/tools/toolDetails/ToolDetailsPage.tsx New ToolDetailsPage component for displaying detailed tool information.
src/components/ui/pagination.tsx New pagination components for navigation through paginated content.
src/lib/tools.ts New getToolDetails function for fetching tool details based on slug.
src/lib/types.ts New ToolCardInterface and ToolDetailsInterface defining the structure for tool cards and details.
src/app/api/tools/similar/route.ts New API endpoint for retrieving similar tools based on tags and categories.
src/components/tools/toolDetails/SimilarTools.tsx New SimilarTools component for displaying tools similar to a specified tool.
src/components/tools/toolDetails/ToolNotFound.tsx New ToolNotFound component for displaying a message when a tool is not found.

Sequence Diagram(s)

sequenceDiagram
    participant User
    participant ToolsPage
    participant API
    participant Database

    User->>ToolsPage: Request tools
    ToolsPage->>API: GET /api/tools?page=1
    API->>Database: Query tools with pagination
    Database-->>API: Return tools data
    API-->>ToolsPage: Return tools and total pages
    ToolsPage-->>User: Display tools

📜 Recent review details **Configuration used: .coderabbit.yaml** **Review profile: CHILL**
📥 Commits Reviewing files that changed from the base of the PR and between 6e9590b1ce29c8cbf2bc09e7feb622b4a8e3e524 and 4c99b991d77ea72a79177e5bef273615ce8f750b.
📒 Files selected for processing (1) * `src/components/tools/toolDetails/ToolNotFound.tsx` (1 hunks)
🚧 Files skipped from review as they are similar to previous changes (1) * src/components/tools/toolDetails/ToolNotFound.tsx

Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?

❤️ Share - [X](https://twitter.com/intent/tweet?text=I%20just%20used%20%40coderabbitai%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20the%20proprietary%20code.%20Check%20it%20out%3A&url=https%3A//coderabbit.ai) - [Mastodon](https://mastodon.social/share?text=I%20just%20used%20%40coderabbitai%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20the%20proprietary%20code.%20Check%20it%20out%3A%20https%3A%2F%2Fcoderabbit.ai) - [Reddit](https://www.reddit.com/submit?title=Great%20tool%20for%20code%20review%20-%20CodeRabbit&text=I%20just%20used%20CodeRabbit%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20proprietary%20code.%20Check%20it%20out%3A%20https%3A//coderabbit.ai) - [LinkedIn](https://www.linkedin.com/sharing/share-offsite/?url=https%3A%2F%2Fcoderabbit.ai&mini=true&title=Great%20tool%20for%20code%20review%20-%20CodeRabbit&summary=I%20just%20used%20CodeRabbit%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20proprietary%20code)
🪧 Tips ### Chat There are 3 ways to chat with [CodeRabbit](https://coderabbit.ai): - Review comments: Directly reply to a review comment made by CodeRabbit. Example: - `I pushed a fix in commit , please review it.` - `Generate unit testing code for this file.` - `Open a follow-up GitHub issue for this discussion.` - Files and specific lines of code (under the "Files changed" tab): Tag `@coderabbitai` in a new review comment at the desired location with your query. Examples: - `@coderabbitai generate unit testing code for this file.` - `@coderabbitai modularize this function.` - PR comments: Tag `@coderabbitai` in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples: - `@coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.` - `@coderabbitai read src/utils.ts and generate unit testing code.` - `@coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.` - `@coderabbitai help me debug CodeRabbit configuration file.` Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. ### CodeRabbit Commands (Invoked using PR comments) - `@coderabbitai pause` to pause the reviews on a PR. - `@coderabbitai resume` to resume the paused reviews. - `@coderabbitai review` to trigger an incremental review. This is useful when automatic reviews are disabled for the repository. - `@coderabbitai full review` to do a full review from scratch and review all the files again. - `@coderabbitai summary` to regenerate the summary of the PR. - `@coderabbitai resolve` resolve all the CodeRabbit review comments. - `@coderabbitai configuration` to show the current CodeRabbit configuration for the repository. - `@coderabbitai help` to get help. ### Other keywords and placeholders - Add `@coderabbitai ignore` anywhere in the PR description to prevent this PR from being reviewed. - Add `@coderabbitai summary` to generate the high-level summary at a specific location in the PR description. - Add `@coderabbitai` anywhere in the PR title to generate the title automatically. ### Documentation and Community - Visit our [Documentation](https://docs.coderabbit.ai) for detailed information on how to use CodeRabbit. - Join our [Discord Community](http://discord.gg/coderabbit) to get help, request features, and share feedback. - Follow us on [X/Twitter](https://twitter.com/coderabbitai) for updates and announcements.
vercel[bot] commented 6 days ago

@Ankur1493 is attempting to deploy a commit to the Ankur 's projects Team on Vercel.

A member of the Team first needs to authorize it.

Ankur1493 commented 5 days ago

@tyaga001 review needed!

vercel[bot] commented 3 days ago

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
devtoolsacademy ❌ Failed (Inspect) Nov 25, 2024 5:09pm