Skip to content

khaledalam/backend-assignment

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 

Repository files navigation

Backend Assignment v1.0

Create a simple CRUD Blog web application.

  • For backend MUST use: Yii v1.1 and MySQL
  • For frontend use native HTML, CSS, JavaScript, Bootstrap/Tailwind or any preferred frontend framework(e.g. React.js)

Summary: This Yii application will securely handle user authentication, including user sign in, sign up and verify user email(not need to send real emails, just generate a token and use it).

Task Requirements:

  • Authentication: Secure user authentication processes, such as signin, signup and the verify user email logic.

  • Ajax Validation: Real-time email validation during registration to ensure the email is not already in use.

  • CRUD Operations: Verified Users can perform Create, Read, Update, and Delete (CRUD) operations on blog posts, associated with their unique user ID. (non-verified users won't be able to CRUD blog posts)

  • Form Validation: Use multiple fields and implement validation rules.

  • Blog Post Visibility: Users can mark their posts as public or private.

  • Likes: Users can like blog posts.

  • Search and Filter: Users can search for blog posts by title or description and filter results by date and author.

  • Bonus points: Create a new branch from your main base branch and:

    • Implement a new feature in this new branch which is "Create new public webpage that shows in real-time(without refresh page) a list of blog posts that have at least 1 comment and their authors have at least 2 blogs" (optimize the SQL query)
    • Create a PR from this new branch and merge it into -> your main base branch
    • Write a small document(e.g. readme file) about how to setup and run your code

Task Submission: Create a private repo on GitHub and share the repo with [email protected]

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published