Given two $k$-graphs $H$ and $F$, a perfect $F$-packing in $H$ is a collection of vertex-disjoint copies of $F$ in $H$ which together cover all the vertices in $H$. In the case when $F$ is a single edge, a perfect $F$-packing is simply a perfect matching. For a given fixed $F$, it is generally the case that the decision problem whether an $n$-vertex $k$-graph $H$ contains a perfect $F$-packing is NP-complete.\\
\\In this talk we describe a general tool which can be used to determine classes of
(hyper)graphs for which the corresponding decision problem for perfect $F$-packings
is polynomial time solvable. We then give applications of this tool. For example,
we give a minimum $l$-degree condition for which it is polynomial time solvable
to determine whether a $k$-graph satisfying this condition has a perfect matching
(partially resolving a conjecture of Keevash, Knox and Mycroft). We also answer
a question of Yuster concerning perfect $F$-packings in graphs.