Existence of a left adjoint to the functor between cocomplete category and category of presheaves on small category. 
Assume functor $F:C \rightarrow D$ where $C$ is a small category and $D$ is cocomplete category. Now let $S$ denote a functor given by composition $D \xrightarrow{\text{Yoneda embedding}}D^* \xrightarrow F^{*} C^*$ ($C^*$ is a category of presheaves from $C$). Prove that $S$ has left adjoint functor.

The problem here that I don't know where to start. So I need a hint to begin with. Thanks!
 A: First let us recall the fact that every presheaf is a colimit of representables. Just Googling this sentence should already give you plenty of proofs, but just to link two: Wikipedia and another question on math.se. That is, given a presheaf $P$ in $\mathcal{C}^*$ (keeping you notation for the category of presheaves), we have that $P = \operatorname{colim}_{i \in I} y(C_i)$ for some objects $C_i$ in $\mathcal{C}$. Here $y$ denotes the Yoneda embedding (I will use $y'$ for the Yoneda embedding $y': \mathcal{D} \to \mathcal{D}^*$, just to make clear which one is used when).
Now the proof proceeds by abstract nonsense (essentially this is working out the direction Derek tried to point towards in the comments). The proof is essentially a long chain of natural isomorphisms (or simply actual equalities). It may be a good exercise to stop at each step and see if you can do the rest by yourself. For this reason I have broken up this chain at every step, but if you wish you can just read all the centred math/text and paste it together in one long chain of isomorphisms.
Let $P$ be a presheaf in $\mathcal{C}^*$ and let $D$ be some object in $\mathcal{D}$. Then by definition
$$
\operatorname{Hom}(P, S(D)) = \operatorname{Hom}(P, F^* y'(D)).
$$
Since every presheaf is a colimit of representables we have
$$
\operatorname{Hom}(P, F^* y'(D)) \cong \operatorname{Hom}(\operatorname{colim}_{i \in I} y(C_i), F^* y'(D)).
$$
Then using that Hom-sets turn colimits in their first argument into limits we have
$$
\operatorname{Hom}(\operatorname{colim}_{i \in I} y(C_i), F^* y'(D)) \cong \lim_{i \in I} \operatorname{Hom}(y(C_i), F^* y'(D)).
$$
By the Yoneda-lemma we then find
$$
\lim_{i \in I} \operatorname{Hom}(y(C_i), F^* y'(D)) \cong \lim_{i \in I} F^* y'(D)(C_i).
$$
By definition of $F^*$ this gives us
$$
\lim_{i \in I} F^* y'(D)(C_i) = \lim_{i \in I} y'(D)(F(C_i)).
$$
By the definition of the Yoneda-embedding we then have
$$
\lim_{i \in I} y'(D)(F(C_i)) = \lim_{i \in I} \operatorname{Hom}(F(C_i), D).
$$
Once more using that Hom-sets convert limits into colimits in their first argument (here we use that $\mathcal{D}$ is cocomplete), we obtain
$$
\lim_{i \in I} \operatorname{Hom}(F(C_i), D) \cong \operatorname{Hom}(\operatorname{colim}_{i \in I} F(C_i), D).
$$
This then gives us the desired description for our left adjoint: send a presheaf $P \cong \operatorname{colim}_{i \in I} y(C_i)$ to $\operatorname{colim}_{i \in I} F(C_i)$.

Of course, to really prove that this gives you a functor, you would still need to check that this works for arrows as well. Here is an idea for what to do. In the same style as above, so you can stop at any time to try to do the rest on your own.
Let $P = \operatorname{colim}_{i \in I} y(C_i)$ and $Q = \operatorname{colim}_{j \in J} y(C_j)$. The idea is that, given an arrow $P \to Q$, to get an arrow $\operatorname{colim}_{i \in I} F(C_i) \to \operatorname{colim}_{j \in J} F(C_j)$, we will want to use the universal property of the colimit $\operatorname{colim}_{i \in I} F(C_i)$. That is, we will try to make $\operatorname{colim}_{j \in J} F(C_j)$ into a cocone for the diagram $(F(C_i))_{i \in I}$. Again, we will make some identifications, starting with
$$
\operatorname{Hom}(P, Q) = \operatorname{Hom}(\operatorname{colim}_{i \in I} y(C_i), \operatorname{colim}_{j \in J} y(C_j)).
$$
Pulling the colimit out of the first argument gives us
$$
\operatorname{Hom}(\operatorname{colim}_{i \in I} y(C_i), \operatorname{colim}_{j \in J} y(C_j)) \cong \lim_{i \in I} \operatorname{Hom}(y(C_i), \operatorname{colim}_{j \in J} y(C_j)).
$$
Then by the Yoneda lemma we get
$$
\lim_{i \in I} \operatorname{Hom}(y(C_i), \operatorname{colim}_{j \in J} y(C_j)) \cong \lim_{i \in I} (\operatorname{colim}_{j \in J} y(C_j))(C_i).
$$
Using the fact that colimits in presheaf categories are calculated pointwise we then turn this into
$$
\lim_{i \in I} (\operatorname{colim}_{j \in J} y(C_j))(C_i) = \lim_{i \in I} \operatorname{colim}_{j \in J} (y(C_j)(C_i)),
$$
which by the definition of the Yoneda embedding becomes
$$
\lim_{i \in I} \operatorname{colim}_{j \in J} (y(C_j)(C_i)) = \lim_{i \in I} \operatorname{colim}_{j \in J} \operatorname{Hom}(C_i, C_j).
$$
So to sum up, we have
$$
\operatorname{Hom}(P, Q) \cong \lim_{i \in I} \operatorname{colim}_{j \in J} \operatorname{Hom}(C_i, C_j). 
$$
An arrow $P \to Q$ thus corresponds to some tuple $([f_i])_{i \in I}$ of equivalence classes of arrows in $\mathcal{C}$. If you write out the definitions here, we have that arrows $f_i: C_i \to C_j$ and $f_i': C_i \to C_{j'}$ are in the same equivalence class if they factor through the diagram $(C_j)_{j \in J}$ in essentially the same way. That is, there is $j^*$, $a: C_j \to C_{j^*}$ and $b: C_{j'} \to C_{j^*}$ such that $a f_i = b f_i'$. This means precisely that if we have a cocone of the $(C_j)_{j \in J}$, then an equivalence class $[f_i]$ determines a unique arrow into the vertex of that cocone. In particular, if we take images under $F$ we get that each equivalence class $[f_i]$ determines a unique arrow $g_i: F(C_i) \to \operatorname{colim}_{j \in J} F(C_j)$ by composing $F(f_i)$ with the coprojection of $F(C_j)$ into the colimit.
So from the tuple $([f_i])_{i \in I}$ we then obtain a tuple of arrows $(g_i)_{i \in I}$ (remember, where $g_i: F(C_i) \to \operatorname{colim}_{j \in J} F(C_j)$). Writing out the definition of the limit we obtained that tuple from, we precisely get that $(g_i)_{i \in I}$ forms a cocone for the diagram $(F(C_i))_{i \in I}$.
So we used an arrow $P \to Q$ to make $\operatorname{colim}_{j \in J} F(C_j)$ into the vertex of a cocone of $(F(C_i))_{i \in I}$. Which means that we obtain an arrow $\operatorname{colim}_{i \in I} F(C_i) \to \operatorname{colim}_{j \in J} F(C_j)$, which is the arrow we will send our original $P \to Q$ to.
