1. Coding Standards
- Naming Conventions:
- Use
camelCase
for variables and functions.
- Use
PascalCase
for React components and class names.
- Use
snake_case
for database table names.
- Commenting: Write
meaningful
comments to explain complex logic and functions.
- Code Formatting: Use a linter like
ESLint
and a formatter like Prettier
to maintain consistent code style.
2. Frontend Development
- Framework: Use
React.js
for building the user interface.
- State Management: Use
Redux Toolkit
for state management.
- Styling: Use TailwindCSS Modules or styled-components for styling React components.
- Routing: Use React Router for client-side routing.
- API Integration: Create a
services
directory for handling API calls using axios
or Redux Toolkit Query
.
- Component Design: Follow the Atomic Design methodology for building reusable components:
- Atoms: Basic elements like buttons, inputs.
- Molecules: Combination of atoms like a form input with a label.
- Organisms: Complex components like a navbar.
- Templates: Page layouts.
- Pages: Complete pages/views.
3. Backend Development
- Framework: Use
Node.js
with Express.js
for building the backend API.
- Database: Use
MySQL
for database management.
- ORM: Use
Sequelize
for MySQL
modeling.
- Authentication: Implement JWT (JSON Web Tokens) for user authentication.
- Error Handling: Create a global error handling
middleware
.
- API Documentation: Use tools like
Postman
to document your API
endpoints.
- Security: Ensure security best practices:
- Use environment variables for sensitive information.
- Implement data
validation
and sanitization
.
- Use
HTTPS
for secure communication.
4. Testing