[proofplan]
We construct the factorising map by pairing the base point $q(p)\in N$ with the point $F(p)\in E$. The covering condition $\pi\circ F=f\circ q$ is exactly the condition that this pair belongs to the pullback bundle subset $f^*E\subset N\times E$. Smoothness follows because the constructed map is the restriction of the smooth product map $(q,F):P\to N\times E$, and uniqueness follows because an element of $f^*E$ is determined by its two coordinates.
[/proofplan]
[step:Construct the canonical projection map from the pullback bundle to $E$]
Since $E\to M$ is a smooth fibre bundle, its pullback along $f$ is the pullback bundle $f^*E\to N$. Define the smooth map $\tilde f:f^*E\to E$ by the rule that $\tilde f(y,e)=e$ for each $(y,e)\in f^*E$.
For every $(y,e)\in f^*E$, the defining condition of $f^*E$ gives $\pi(e)=f(y)$. Hence $(\pi\circ \tilde f)(y,e)=\pi(e)=f(y)=(f\circ \pi_{f^*E})(y,e)$, so $\tilde f$ covers $f$. Since $\tilde f$ is the restriction to the embedded submanifold $f^*E\subset N\times E$ of the smooth second projection $N\times E\to E$, it is smooth.
[/step]
[step:Define the factorising map into the pullback bundle]
Let $q$ denote the bundle projection from $P$ to $N$, and let $F$ be a smooth bundle map from $P$ to $E$ satisfying $\pi\circ F=f\circ q$. Define the map $\hat F:P\to f^*E$ by the rule that $\hat F(p)=(q(p),F(p))$ for every $p\in P$.
This is well-defined because, for every $p\in P$, the covering identity $\pi\circ F=f\circ q$ gives $\pi(F(p))=f(q(p))$. Therefore $(q(p),F(p))\in f^*E$.
[guided]
The only possible candidate for $\hat F$ is forced by the two maps we want it to remember: its base point over $N$ must be $q(p)$, and its image under $\tilde f$ must be $F(p)$. Thus we define $\hat F:P\to f^*E$ by setting $\hat F(p)=(q(p),F(p))$ for every $p\in P$.
We must verify that this formula really lands in $f^*E$, not just in the product $N\times E$. By definition,
\begin{align*}
f^*E=\{(y,e)\in N\times E:\pi(e)=f(y)\}.
\end{align*}
For a point $p\in P$, the proposed pair is $(q(p),F(p))$. Since $F$ covers $f$, we have the equality of maps
\begin{align*}
\pi\circ F=f\circ q.
\end{align*}
Evaluating this equality at $p$ gives $\pi(F(p))=f(q(p))$. This is exactly the membership condition for $(q(p),F(p))$ to lie in $f^*E$. Hence $\hat F$ is a well-defined map from $P$ to $f^*E$.
[/guided]
[/step]
[step:Verify that the factorising map is a smooth bundle map over $N$]
Let $(q,F):P\to N\times E$ be the product map defined by $(q,F)(p)=(q(p),F(p))$ for every $p\in P$. By the smoothness of product maps into a product manifold, and since $q$ and $F$ are smooth, $(q,F)$ is smooth. The previous step shows that the image of $(q,F)$ is contained in the embedded submanifold $f^*E\subset N\times E$. The pullback bundle $f^*E$ carries the submanifold smooth structure for which the inclusion $i:f^*E\to N\times E$ is an embedding. Smoothness into this embedded submanifold is checked in local submanifold charts: if $(U,\varphi)$ is a chart of $N\times E$ adapted to $f^*E$ near $(q,F)(p)$, then $\varphi\circ(q,F)$ is smooth and its last coordinates vanish on a neighbourhood of $p$ because $(q,F)$ lands in $f^*E$. The remaining coordinates give the coordinate expression of $\hat F$ in the corresponding chart of $f^*E$, so $\hat F:P\to f^*E$ is smooth.
Moreover, for every $p\in P$,
\begin{align*}
(\pi_{f^*E}\circ \hat F)(p)=\pi_{f^*E}(q(p),F(p))=q(p).
\end{align*}
Thus $\pi_{f^*E}\circ \hat F=q=\operatorname{id}_N\circ q$, so $\hat F$ covers $\operatorname{id}_N$.
[/step]
[step:Check that the constructed map factors $F$ through the canonical map]
For every $p\in P$,
\begin{align*}
(\tilde f\circ \hat F)(p)=\tilde f(q(p),F(p))=F(p).
\end{align*}
Hence
\begin{align*}
\tilde f\circ \hat F=F.
\end{align*}
[/step]
[step:Prove uniqueness from the two coordinates of a pullback point]
Let
\begin{align*}
G:P\to f^*E
\end{align*}
be a bundle map covering $\operatorname{id}_N$ such that $\tilde f\circ G=F$. For each $p\in P$, write
\begin{align*}
G(p)=(y_p,e_p)\in f^*E.
\end{align*}
Because $G$ covers $\operatorname{id}_N$,
\begin{align*}
y_p=\pi_{f^*E}(G(p))=q(p).
\end{align*}
Because $\tilde f\circ G=F$,
\begin{align*}
e_p=\tilde f(G(p))=F(p).
\end{align*}
Therefore
\begin{align*}
G(p)=(q(p),F(p))=\hat F(p)
\end{align*}
for every $p\in P$. Hence $G=\hat F$, proving uniqueness. This completes the proof of the universal property.
[/step]