EnverX offers a simple and convenient platform to fund early-stage projects and trade future carbon credits.
- Fork this repository
- Take a fresh `pull`
- Create a `development` branch
- `Push` the updated code after task completion
Note: Make sure to add proper `commit` messages
- Create a RESTful API for a simple blog application.
- Use Node.js and Express.js as the backend framework.
- Implement CRUD (Create, Read, Update, Delete) operations for blog posts.
- Store the blog posts in a dB
- Include validation for the API endpoints to ensure data integrity.
- Implement error handling and return appropriate HTTP status codes.
- Use Git for version control and host the project on GitHub.
- Write clear and concise documentation on how to set up and use the API.
- Use Typescript to get a Bonus point.
- Set up a new Node.js project and initialize it with a package.json file.
- Create the necessary Express.js routes and controllers for CRUD operations on blog posts.
GET /posts
- Get all blog posts (Mandatory: Apply sorting based on created Date, blog name and filters based on category).GET /posts/:id
- Get a specific blog post by ID.POST /posts
- Create a new blog post.PUT /posts/:id
- Update an existing blog post.DELETE /posts/:id
- Delete a blog post.
- Implement validation for the API endpoints to ensure the data is correct and complete.
- Handle errors gracefully and return appropriate HTTP status codes (e.g., 404 for not found, 500 for server errors, etc.).
- Test the API endpoints using a tool like Postman or cURL.
- Write a README.md file with instructions on setting up the project, running it, and using the API.
- Initialize a Git repository, commit your code regularly, and push it to GitHub.
- Optionally, include any additional features or improvements you think would enhance the API.
The estimated time to complete this assignment is 6-7 hours, but it may vary based on your familiarity and experience with the technologies.
- The submitted code should be plagiarism free otherwise your application will be disqualified
- Please complete the assignment and submit it to us by the submission deadline assigned to you.
- follow the instructions carefully, as we will evaluate your code, documentation, and adherence to best practices. Once you have finished, please send us the GitHub repository link.
- If you have any questions or need further clarification, please don't hesitate to reach out to us at hr@enverx.com. We look forward to reviewing your work and discussing it with you in the next stage of the interview process.