Valérie Donzelli’s Declaration of War deserves, above all else, praise for its sense of perspective. The film’s central narrative, which examines how a young couple raising a newborn together responds when the child becomes sick, views the unfolding events with an impressive circumference. Up close and in great detail, we see the impact that the ordeal has not only on both mother and father but their friends and families as well. More importantly, we see the myriad ways in which that impact is felt by each party; Donzelli possesses a robust grasp on the toll a child’s terminal illness can exact on the parents, and manages to find both triumph in their courage and sorrow in the fracturing the struggle causes in their relationship.
What keeps Declaration of War from completely succeeding as human drama lies in the director’s propensity for stylistic touches that cultivate emotional distance and interruption. It’s a shame; Donzelli has crafted an otherwise highly intimate film, one that retains a tight proximity to mother Juliette (Donzelli) and father Roméo (Jérémie Elkaïm, who co-wrote the film with Donzelli) for the bulk of its running time. That sense of closeness makes the immediacy of their situation palpable, effortlessly drawing us into their story as they try to cope with the news and find strength enough to go forward for the sake of their son’s life. But as Juliette and Roméo rally to battle their son’s disease, Donzelli intersperses numerous elements throughout the film which clash with her atmosphere of realism.
Sometimes, they’re just “cute”; sometimes they’re inexcusably disruptive. Maybe writers shouldn’t name their protagonists after two particular star-crossed lovers unless they have a good reason, for example, though the way Donzelli has monikered her principals only proves to be puzzling rather than mood-shattering. If the reference never contributes meaningfully to the narrative, at least it doesn’t derail it. It’s the film’s more detached characteristics, which ever so slightly hearken back to La Nouvelle Vague, that create disharmony in Donzelli’s plot, the stylized bits that pop up almost abruptly in the midst of an otherwise genuine story. This regrettable incongruity is best exemplified in the film’s namesake sequence, in which Roméo and Juliette are each shown with their respective families, rigidly and firmly detailing their plan for facing their son’s bout with a brain tumor as though they’re in a war room. Apart from being far too on the nose, this beat just doesn’t fit in the established milieu of the movie– and it’s far from being the only one of its kind here.
The contrast struck between the film’s simultaneous desire to immerse its audience in the world and the woes of its characters and its tendency to keep viewers at arm’s length proves to be a significant Achilles’ heel for Donzelli’s efforts. But the greatest offense Declaration of War commits lies in a massive overuse of voice-over. I don’t know if I necessarily agree with Robert McKee regarding voice-over as a rule, but I’m confident that I despised the film’s wanton indulgence of the technique quite as much as he would. Far too much is given away through the commentary deployed in voice-over, which is frustrating enough on its own and downright aggravating considering how much some of the events the voice-over describes deserve to be seen instead of described. Maybe Donzelli wanted to save time and use voice-over to tell the entire story while allowing her to only depict its most important parts, but the truncating effect it has lends itself to a rushed and lackadaisical storytelling sensibility rather than the more thought-out feel of the rest of the picture.
I don’t want to harp on Declaration of War‘s less flattering characteristics to the point of doing a disservice to its better qualities. But the dysfunctional aspects of the film aren’t invisible, and it’s a shame to see them surface at all to mar an otherwise wonderfully made movie. At its humanistic best, Declaration of War is immensely moving; as Jonathan Levine did in the excellent 50/50, Donzelli has taken a sensitive and for many all-too-real subject and made it open and accessible in a completely honest, non-exploitative way. While Donzelli isn’t making a comedy here– though there are more than a few funny moments to be found– her work shares many of the same emotional pursuits as Levine’s most recent offering. Treating this sort of subject matter in an even-handed fashion is tricky, and yet for the most part Declaration of War remains admirably truthful and candid.
And it’s also marvelously acted, which, maybe, is the biggest reason it should be seen. While the cast expands far beyond just Donzelli and Elkaïm, we spend the greater bulk of our time in their company, and a good thing that turns out to be; they’re fantastic. Whether they’re together or on their own, both of them play their roles with an endlessly natural approach to acting. It’s brave stuff that renders them naked, both literally and figuratively, and the sort of quiet and nuanced acting that should be recognized during awards’ season but more often gets overlooked.
Taken as a whole, I think Declaration of War contains enough strong material to make it worth recommending. It’s frustrating in spurts; if Donzelli had stuck in the same mode throughout the whole of the film, she may have had something truly great on her hands, but the ways Declaration of War breaks from its dedication to verisimilitude drag the movie down rather than raise it up. I’m sure both Donzelli and Elkaïm hoped that those touches of style would help enhance their efforts, but they’re only extraneous pieces of window dressing; the best stuff of the film is found in its portrayal of a very real tragedy.
{"id":"2","mode":"form","open_style":"in_place","currency_code":"USD","currency_symbol":"$","currency_type":"decimal","blank_flag_url":"https:\/\/agcrump.work\/wp-content\/plugins\/tip-jar-wp\/\/assets\/images\/flags\/blank.gif","flag_sprite_url":"https:\/\/agcrump.work\/wp-content\/plugins\/tip-jar-wp\/\/assets\/images\/flags\/flags.png","default_amount":500,"top_media_type":"featured_image","featured_image_url":"https:\/\/agcrump.work\/wp-content\/uploads\/2025\/10\/image-asset-179x200.webp","featured_embed":"","header_media":null,"file_download_attachment_data":null,"recurring_options_enabled":false,"recurring_options":{"never":{"selected":true,"after_output":"One time only"},"weekly":{"selected":false,"after_output":"Every week"},"monthly":{"selected":false,"after_output":"Every month"},"yearly":{"selected":false,"after_output":"Every year"}},"strings":{"current_user_email":"","current_user_name":"","link_text":"Leave a tip","complete_payment_button_error_text":"Check info and try again","payment_verb":"Pay","payment_request_label":"A Constant Visual Feast","form_has_an_error":"Please check and fix the errors above","general_server_error":"Something isn't working right at the moment. Please try again.","form_title":"Support My Work:","form_subtitle":"","currency_search_text":"Country or Currency here","other_payment_option":"Other payment option","manage_payments_button_text":"Manage your payments","thank_you_message":"Thanks for supporting my work!","payment_confirmation_title":"A Constant Visual Feast","receipt_title":"Your Receipt","print_receipt":"Print Receipt","email_receipt":"Email Receipt","email_receipt_sending":"Sending receipt...","email_receipt_success":"Email receipt successfully sent","email_receipt_failed":"Email receipt failed to send. Please try again.","receipt_payee":"Paid to","receipt_statement_descriptor":"This will show up on your statement as","receipt_date":"Date","receipt_transaction_id":"Transaction ID","receipt_transaction_amount":"Amount","refund_payer":"Refund from","login":"Log in to manage your payments","manage_payments":"Manage Payments","transactions_title":"Your Transactions","transaction_title":"Transaction Receipt","transaction_period":"Plan Period","arrangements_title":"Your Plans","arrangement_title":"Manage Plan","arrangement_details":"Plan Details","arrangement_id_title":"Plan ID","arrangement_payment_method_title":"Payment Method","arrangement_amount_title":"Plan Amount","arrangement_renewal_title":"Next renewal date","arrangement_action_cancel":"Cancel Plan","arrangement_action_cant_cancel":"Cancelling is currently not available.","arrangement_action_cancel_double":"Are you sure you'd like to cancel?","arrangement_cancelling":"Cancelling Plan...","arrangement_cancelled":"Plan Cancelled","arrangement_failed_to_cancel":"Failed to cancel plan","back_to_plans":"\u2190 Back to Plans","update_payment_method_verb":"Update","sca_auth_description":"Your have a pending renewal payment which requires authorization.","sca_auth_verb":"Authorize renewal payment","sca_authing_verb":"Authorizing payment","sca_authed_verb":"Payment successfully authorized!","sca_auth_failed":"Unable to authorize! Please try again.","login_button_text":"Log in","login_form_has_an_error":"Please check and fix the errors above","uppercase_search":"Search","lowercase_search":"search","uppercase_page":"Page","lowercase_page":"page","uppercase_items":"Items","lowercase_items":"items","uppercase_per":"Per","lowercase_per":"per","uppercase_of":"Of","lowercase_of":"of","back":"Back to plans","zip_code_placeholder":"Zip\/Postal Code","download_file_button_text":"Download File","input_field_instructions":{"tip_amount":{"placeholder_text":"How much do you want to tip?","initial":{"instruction_type":"normal","instruction_message":"How much do you want to tip?"},"empty":{"instruction_type":"error","instruction_message":"How much do you want to tip?"},"invalid_curency":{"instruction_type":"error","instruction_message":"How much do you want to tip?"}},"recurring":{"placeholder_text":"Recurring","initial":{"instruction_type":"normal","instruction_message":"Want to make a recurring tip?"},"success":{"instruction_type":"success","instruction_message":"Want to make a recurring tip?"},"empty":{"instruction_type":"error","instruction_message":"Want to make a recurring tip?"}},"name":{"placeholder_text":"Name on Credit Card","initial":{"instruction_type":"normal","instruction_message":"Enter the name on your card."},"success":{"instruction_type":"success","instruction_message":"Enter the name on your card."},"empty":{"instruction_type":"error","instruction_message":"Please enter the name on your card."}},"privacy_policy":{"terms_title":"Terms and conditions","terms_body":null,"terms_show_text":"View Terms","terms_hide_text":"Hide Terms","initial":{"instruction_type":"normal","instruction_message":"I agree to the terms."},"unchecked":{"instruction_type":"error","instruction_message":"Please agree to the terms."},"checked":{"instruction_type":"success","instruction_message":"I agree to the terms."}},"email":{"placeholder_text":"Your email address","initial":{"instruction_type":"normal","instruction_message":"Enter your email address"},"success":{"instruction_type":"success","instruction_message":"Enter your email address"},"blank":{"instruction_type":"error","instruction_message":"Enter your email address"},"not_an_email_address":{"instruction_type":"error","instruction_message":"Make sure you have entered a valid email address"}},"note_with_tip":{"placeholder_text":"Your note here...","initial":{"instruction_type":"normal","instruction_message":"Attach a note to your tip (optional)"},"empty":{"instruction_type":"normal","instruction_message":"Attach a note to your tip (optional)"},"not_empty_initial":{"instruction_type":"normal","instruction_message":"Attach a note to your tip (optional)"},"saving":{"instruction_type":"normal","instruction_message":"Saving note..."},"success":{"instruction_type":"success","instruction_message":"Note successfully saved!"},"error":{"instruction_type":"error","instruction_message":"Unable to save note note at this time. Please try again."}},"email_for_login_code":{"placeholder_text":"Your email address","initial":{"instruction_type":"normal","instruction_message":"Enter your email to log in."},"success":{"instruction_type":"success","instruction_message":"Enter your email to log in."},"blank":{"instruction_type":"error","instruction_message":"Enter your email to log in."},"empty":{"instruction_type":"error","instruction_message":"Enter your email to log in."}},"login_code":{"initial":{"instruction_type":"normal","instruction_message":"Check your email and enter the login code."},"success":{"instruction_type":"success","instruction_message":"Check your email and enter the login code."},"blank":{"instruction_type":"error","instruction_message":"Check your email and enter the login code."},"empty":{"instruction_type":"error","instruction_message":"Check your email and enter the login code."}},"stripe_all_in_one":{"initial":{"instruction_type":"normal","instruction_message":"Enter your credit card details here."},"empty":{"instruction_type":"error","instruction_message":"Enter your credit card details here."},"success":{"instruction_type":"normal","instruction_message":"Enter your credit card details here."},"invalid_number":{"instruction_type":"error","instruction_message":"The card number is not a valid credit card number."},"invalid_expiry_month":{"instruction_type":"error","instruction_message":"The card's expiration month is invalid."},"invalid_expiry_year":{"instruction_type":"error","instruction_message":"The card's expiration year is invalid."},"invalid_cvc":{"instruction_type":"error","instruction_message":"The card's security code is invalid."},"incorrect_number":{"instruction_type":"error","instruction_message":"The card number is incorrect."},"incomplete_number":{"instruction_type":"error","instruction_message":"The card number is incomplete."},"incomplete_cvc":{"instruction_type":"error","instruction_message":"The card's security code is incomplete."},"incomplete_expiry":{"instruction_type":"error","instruction_message":"The card's expiration date is incomplete."},"incomplete_zip":{"instruction_type":"error","instruction_message":"The card's zip code is incomplete."},"expired_card":{"instruction_type":"error","instruction_message":"The card has expired."},"incorrect_cvc":{"instruction_type":"error","instruction_message":"The card's security code is incorrect."},"incorrect_zip":{"instruction_type":"error","instruction_message":"The card's zip code failed validation."},"invalid_expiry_year_past":{"instruction_type":"error","instruction_message":"The card's expiration year is in the past"},"card_declined":{"instruction_type":"error","instruction_message":"The card was declined."},"missing":{"instruction_type":"error","instruction_message":"There is no card on a customer that is being charged."},"processing_error":{"instruction_type":"error","instruction_message":"An error occurred while processing the card."},"invalid_request_error":{"instruction_type":"error","instruction_message":"Unable to process this payment, please try again or use alternative method."},"invalid_sofort_country":{"instruction_type":"error","instruction_message":"The billing country is not accepted by SOFORT. Please try another country."}}}},"fetched_oembed_html":false}