The Grade(s)

Regarding how it will be graded, it will roughly look like this:

Project Grading Rubric (Total: 20/20)

Note that some areas may have bonus points, and ongoing submissions may also allow you to earn bonus points, depending on your involvement.
The final grade is divided into four main areas, covering technical quality, user experience, and work organization.

1. Functionality and Code (11 points)

This category evaluates the robustness, logic, and cleanliness of the code produced. This is the most important area.

Criteria Points Explanation
Functional Code 5 pts Evaluation of the implemented functionalities. Warning: the principle is simple, "code that doesn't work = no points" for the functionality concerned.
Architecture and Structure 2 pts Evaluation of the project's organization: clear organization of files and folders, and separation of responsibilities (each module or component has a unique and defined role).
Error Handling 1 pt Implementation of mechanisms to handle errors (e.g., Try/Catch), and systematic validation of user inputs.
Basic Performance 1 pt The code must be efficient: absence of memory leaks and use of consistent and appropriate algorithms for the tasks.
Presence of .env and possibilities to test the app avoid spending time debugging 2 pt You must provide all your environment variables, all your repositories, either be public and provide by mail, by a secure means, or by any means the environment variables. and give the possibility

2. Good Development Practices (Dev) (3 points)

This section evaluates professional rigor and how the project is conducted.

Criteria Points Explanation
Git and Versioning 1 pt Professional use of Git: coherent commit history, explicit and clear commit messages, appropriate frequency and granularity of commits (small, logical, and regular changes).
Code Quality 1 pt The code must be easily understandable (readability), with a clear naming system for variables/functions, and respecting style conventions (indentation, spacing, etc.).
Technical Documentation 1 pt Provision of a complete README file (installation, launch, functionalities) and presence of relevant comments in the code.

3. Technical Choices and Justification (4 points)

The evaluation here focuses on your ability to choose the right tools and justify your decisions.

Criteria Points Explanation
Relevance of the Framework 2 pts The chosen framework or library must be the most suitable for the context and objectives of the project.
Written Justification of Choice (included) A clear justification of your technical choices must be provided (often in a framework.md type document).
Appropriate Use of Tools 1 pt Mastery of ancillary tools: correct use of a Package manager (npm, Yarn), of bundles (Webpack, Vite), etc.
Basic Security 1 pt Consideration of fundamental security measures: Validation and Sanitization of data to prevent vulnerabilities.

4. Interface and User Experience (UX/UI) (2 points + Bonus)

This last area concerns the visual aspect and ease of use of the application.

Criteria Points Explanation
Interface and User Experience 2 pts The interface must be pleasant and the user experience intuitive. This includes: Ergonomics, responsive design (adapted to all screen sizes), and accessibility.
Creativity / Originality Bonus A bonus is awarded for innovative approaches or a particularly creative or original solution.

If you have a question about a particular point, don't hesitate!