AbhiPatel10 / openzone

Welcome to the OpenZone! This platform aims to simplify the process of finding and contributing to open-source projects. Whether you're a seasoned contributor or just starting out, this platform will help you discover projects aligned with your interests and skills.
https://openzone.vercel.app
19 stars 42 forks source link

[Feature]: [Backend]: Contact Us page in TypeScript with full integration with the frontend. #96

Open abhiperfect opened 3 months ago

abhiperfect commented 3 months ago

Description

Description: Implement the backend for the "Contact Us" page using TypeScript. The backend will be responsible for handling form submissions, validating input data, and either storing the messages in a database or forwarding them to a specified email address.

Features:

  1. API Endpoint:

    • Develop a RESTful API endpoint (/contact) to receive POST requests from the contact form.
  2. Data Validation:

    • Validate incoming data to ensure all required fields (e.g., name, email, message) are correctly filled.
    • Use libraries like class-validator for TypeScript to enforce validation rules.
  3. Data Processing:

    • Option to store the messages in a database (e.g., MongoDB, PostgreSQL).
  4. Response Handling:

    • Provide appropriate HTTP responses for successful submissions and validation errors.
    • Implement error handling to manage and log any issues during the process.
  5. Security:

    • Ensure secure handling of user data, including protection against common vulnerabilities such as SQL injection and XSS.
    • Implement rate limiting to prevent abuse of the contact form endpoint.

Screenshots

No response

Additional Information

No response

Code of Conduct

abhiperfect commented 3 months ago

I would like to work on this issue.

AbhiPatel10 commented 3 months ago

Assigning to you

Use MongoDb as a database. And let me know if you need any help.

@abhiperfect please join our discord server for smooth conversation.

https://discord.com/invite/fCkbyC52

abhiperfect commented 3 months ago

Assigning to you

Use MongoDb as a database. And let me know if you need any help.

@abhiperfect please join our discord server for smooth conversation.

https://discord.com/invite/fCkbyC52

Got it, i will use Mongo db for database.

Latish705 commented 3 months ago

@AbhiPatel10 if no updates on this I would like to work on this issue