Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
e102d54
Create analyze_bug.md to automate sentry
alvarotech Sep 18, 2025
485b9c4
Update .mcp.json with sentry mcp
alvarotech Sep 18, 2025
9a73c7f
Fix JSON syntax error in .mcp.json
alvarotech Sep 18, 2025
099d41a
feat: Add logout endpoint and dashboard logout button (NEWS-1)
alvarotech Sep 18, 2025
9b56662
docs: Add comprehensive testing and documentation for logout function…
alvarotech Sep 18, 2025
d840b0b
Update README.md
alvarotech Sep 18, 2025
06b4541
qa: Add E2E validation results and final acceptance criteria for logo…
alvarotech Sep 18, 2025
c1911a2
fix: configure pytest-asyncio and fix failing tests
alvarotech Sep 18, 2025
81e2fb9
Merge branch 'main' of github.com:alvarotech/react-fastapi-boilerplate
alvarotech Sep 18, 2025
c2bb0ea
feat: add comprehensive tests for news use cases
alvarotech Sep 18, 2025
d92c360
feat: add comprehensive backend tests to achieve 82% coverage
alvarotech Sep 18, 2025
ee7bcb9
Fix 25 failing tests to achieve 82% code coverage
alvarotech Sep 18, 2025
b9e39de
NEWS-2: Implement user profile management feature
alvarotech Sep 18, 2025
d3e2d42
NEWS-2: Add BackButton component
alvarotech Sep 18, 2025
fd6dc12
NEWS-2: Add additional profile tests
alvarotech Sep 18, 2025
21fcc3d
NEWS-2: Reorganize scripts and add Vite config
alvarotech Sep 18, 2025
b90e5bd
Add Profile button to DashboardHeader
alvarotech Sep 18, 2025
edf4f1e
Change HTML title to News Manager
alvarotech Sep 18, 2025
6b2136d
feat: add assistant improvements and documentation enhancements
alvarotech Sep 25, 2025
1410070
feat: add Claude settings and feature branch trees
alvarotech Sep 25, 2025
5747a68
feat: remove NEWS-8 and NEWS-9 worktrees and update commands
alvarotech Sep 25, 2025
1201cca
feat: Add news creation functionality with form validation and modal
alvarotech Sep 25, 2025
c6d738e
NEWS-10: Fix favorites filter functionality
alvarotech Sep 25, 2025
1165c75
fix: update root endpoint message to reflect News Dashboard context
alvarotech Sep 30, 2025
afb44cb
Cursor and Claude commands and documentation updated
alvarotech Oct 1, 2025
2bbef96
Playwright MCP commands added
alvarotech Oct 1, 2025
8796336
Fix test corrections and cleanup
alvarotech Oct 1, 2025
3ee694c
Add news router tests and manual test documentation
alvarotech Oct 1, 2025
aa6edd7
Remove manual test documentation file
alvarotech Oct 1, 2025
63ef2f9
feat(NEWS-17): Add dark mode toggle to profile page
alvarotech Nov 4, 2025
d1546cc
fix: Change Header component from default to named export
alvarotech Nov 5, 2025
dcee7b0
feat(NEWS-17): Add dark mode support to home page components
alvarotech Nov 5, 2025
b47c900
feat(NEWS-17): Implement dark mode for home page using CSS variables
alvarotech Nov 5, 2025
99af935
refactor(NEWS-17): Clean up unnecessary button color overrides
alvarotech Nov 5, 2025
338fa5d
Merge branch 'NEWS-17' into main - Add dark mode toggle feature
alvarotech Nov 5, 2025
1928884
Fix numbering and enhance Jira linking in develop-us command
alvarotech Nov 5, 2025
ef9b4cf
fix: resolve 422 error in news drag-and-drop by using data attribute …
alvarotech Nov 5, 2025
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
7 changes: 7 additions & 0 deletions .claude/commands/analyze_bug.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
<sentry_issue>
#$ARGUMENTS
</sentry_issue>
investigate this sentry_issue, I don't want you to perform actions, just investigate it


/analyze_bug https://sentry/.....
15 changes: 15 additions & 0 deletions .claude/commands/develop-us.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
Please analyze and fix the Jira ticket: $ARGUMENTS.

Follow these steps:

1. Use Jira MCP to get the ticket details, whether it is the ticket id/number, keywords referring to the ticket or indicating status, like "the one in progress"
2. Understand the problem described in the ticket
3. Search the codebase for relevant files
4. Start a new branch using the ID of the ticket (for example NEWS-1)
5. Implement the necessary changes to solve the ticket
6. Write and run tests to verify the solution
7. Ensure code passes linting and type checking
8. Create a descriptive commit message that includes the Jira ticket ID (e.g., "NEWS-1") in both the commit title and description for proper linking
9. Push and create a PR, including the Jira ticket ID (e.g., "NEWS-1") in the PR title and description so it gets linked in the Jira ticket

Remember to use the GitHub CLI (`gh`) for all GitHub-related tasks.
214 changes: 214 additions & 0 deletions .claude/commands/e2e.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,214 @@
# E2E Testing Command

**Description**: Run E2E tests with Playwright using the qa-criteria-validator agent

**Usage**: Use `/e2e` command followed by optional test type

## Command Options

- `/e2e` - Interactive mode (choose what to test)
- `/e2e full` - Run complete E2E test suite
- `/e2e login` - Test login functionality specifically
- `/e2e logout` - Test logout functionality specifically
- `/e2e profile` - Test profile management functionality
- `/e2e auth` - Test all authentication flows
- `/e2e dashboard` - Test dashboard functionality
- `/e2e [feature]` - Test specific feature by name

## Implementation

When this command is invoked, Claude should:

1. **Check Application Status**
- Verify frontend server is running on http://localhost:5173
- Verify backend server is running on http://localhost:8000
- Alert user if servers need to be started

2. **Launch qa-criteria-validator Agent**
- Use the Task tool with subagent_type: "qa-criteria-validator"
- Pass appropriate test prompt based on command argument

3. **Test Prompts by Type**

### Full Test Suite (`/e2e full`)
```
Please run comprehensive E2E tests for the entire React FastAPI application using Playwright.

Test the following key areas:
1. User authentication (login/logout)
2. Dashboard functionality and navigation
3. Profile management (view/edit/password change)
4. Protected route access
5. Error handling and edge cases
6. User session management

Application details:
- Frontend: React app on http://localhost:5173
- Backend: FastAPI on http://localhost:8000
- Authentication: OAuth2 with JWT tokens

Please start both servers if needed and provide a comprehensive test report.
```

### Logout Testing (`/e2e logout`)
```
Please test the logout functionality thoroughly using Playwright.

Focus on:
1. Logout button accessibility from dashboard
2. Backend logout endpoint call (POST /api/v1/auth/logout)
3. Token clearing from localStorage/sessionStorage
4. Redirection to login page
5. Protected route access prevention after logout
6. Error handling scenarios

Application details:
- Frontend: http://localhost:5173
- Backend: http://localhost:8000
- Key components: DashboardHeader, useLogout mutation, useAuthContext

Provide detailed test results and any issues found.
```

### Login Testing (`/e2e login`)
```
Please test the login functionality comprehensively using Playwright.

Test scenarios:
1. Valid credential login
2. Invalid credential handling
3. Form validation
4. Token storage and session management
5. Redirection to dashboard after login
6. Protected route access after login
7. Remember me functionality (if applicable)

Application details:
- Frontend: http://localhost:5173
- Backend: http://localhost:8000
- Login endpoint: POST /api/v1/auth/login

Provide comprehensive test results and security validation.
```

### Authentication Flows (`/e2e auth`)
```
Please run comprehensive authentication flow tests using Playwright.

Test the complete authentication cycle:
1. User registration (if available)
2. Login with various scenarios
3. Protected route access
4. Session management
5. Logout functionality
6. Token refresh (if applicable)
7. Security edge cases

Application details:
- Frontend: http://localhost:5173
- Backend: http://localhost:8000
- Authentication: OAuth2 with JWT

Provide detailed security assessment and functionality report.
```

### Profile Management (`/e2e profile`)
```
Please test the profile management functionality using Playwright.

Test areas:
1. Profile view and data display
2. Profile editing functionality
3. Password change feature
4. Form validation
5. Error handling
6. Data persistence
7. Navigation and user experience

Application details:
- Frontend: http://localhost:5173
- Backend: http://localhost:8000
- Profile routes and components

Provide detailed test results for all profile features.
```

### Dashboard Testing (`/e2e dashboard`)
```
Please test the dashboard functionality using Playwright.

Test scenarios:
1. Dashboard loading and display
2. Navigation elements
3. User information display
4. Interactive elements
5. Responsive design
6. Header functionality
7. Menu and routing

Application details:
- Frontend: http://localhost:5173
- Dashboard components and navigation

Provide comprehensive dashboard functionality report.
```

### Custom Feature Testing (`/e2e [feature]`)
```
Please test the "{feature}" functionality using Playwright.

Focus on comprehensive testing of this specific feature including:
1. Core functionality
2. User interactions
3. Form validation and data handling
4. Error scenarios
5. Navigation and routing
6. Integration with backend APIs
7. User experience and accessibility

Application details:
- Frontend: React app on http://localhost:5173
- Backend: FastAPI on http://localhost:8000

Please provide detailed test results for the "{feature}" feature.
```

### Interactive Mode (`/e2e`)
When no argument is provided, Claude should ask the user to choose from:
1. Full application test suite
2. Login functionality
3. Logout functionality
4. Profile management
5. Authentication flows
6. Dashboard functionality
7. Custom feature (user specifies)

## Example Usage in Claude Code

**User types**: `/e2e logout`

**Claude should respond**:
"I'll run E2E tests for the logout functionality using Playwright. Let me launch the qa-criteria-validator agent to test this thoroughly."

Then execute:
```
Task tool with:
- subagent_type: "qa-criteria-validator"
- description: "Test logout functionality with Playwright"
- prompt: [logout testing prompt from above]
```

## Prerequisites

- Frontend server running on http://localhost:5173
- Backend server running on http://localhost:8000
- qa-criteria-validator agent has access to Playwright tools
- Test user credentials available for authentication

## Notes

- Always check server status before testing
- Provide clear feedback about what's being tested
- Include server startup instructions if servers aren't running
- Generate comprehensive test reports
- Handle edge cases and error scenarios
9 changes: 9 additions & 0 deletions .claude/commands/worktree-from-ticket.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
<jira_ticket>
#$ARGUMENTS
</jira_ticket>
1- git worktree add ./.trees/feature-issue-$ARGUMENTS -b feature-issue-$ARGUMENTS
2- cd .trees/feature-issue-$ARGUMENTS
3- activate plan mode on
4- analyze the Jira ticket #$ARGUMENTS using MCP
5- determine the agents to be used and if they can be paralelized
6- at the end after the confirmation of the user, commit the changes and push them to the branch
Loading